Linux,unix環境でクラスライブラリを実行時リンクことは可能ですか。またその方法、用意すべき環境(ELF?、コンパイラ)を教えていただけますでしょうか。

関数の実行時リンクですと、dlopen 関数を使用すればいいと思うのですが・・

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2005/06/13 10:43:34
  • 終了:--

回答(2件)

id:obache No.1

obache回答回数31ベストアンサー獲得回数02005/06/13 11:33:10

ポイント60pt

Linuxでのコンパイル、リンク、実行の方法はこれでどうでしょうか?

「クラスライブラリ」ということで、C++のライブラリを使用するならば、こちらを参考に。

id:ppainomi

情報ありがとうございます。

実行時リンクでは、通常のクラスの作成

triangle* p = new triangle()

のようには生成できないのでしょうか。

出来ないとしたらその理由をお教えいただけるとありがたいです。

triangle*

2005/06/13 16:46:35
id:obache No.2

obache回答回数31ベストアンサー獲得回数02005/06/13 23:49:05

ポイント60pt

2つ目のリンクはお読みになってないのでしょうか?そのものずばりの説明が書いてます。


呼び出す方のライブラリがバイナリで配布とかされてて、ここで示しているようにソースを変更できないんでしたら、それを wrap するようなクラスのライブラリを作って、自分で作ったそのライブラリをdlopenすれば良いでしょう。こんな風にplug-in みたいな形式で dlopen するようなものじゃないなら、コンパイル時にリンクしてもあまり変わりないような気もします。

id:ppainomi

アドバイスありがとうございました。参考にさせていただきます。

2005/06/16 11:21:08

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません