質問

Googleを使用してLinux上でDLLを作成する方法を見つけようとしましたが、非常に混乱する情報が得られました。

Linux 上でダイナミック リンク ライブラリを作成することは可能ですか?そうでない場合、実行中の複数のプログラムから別のモジュールのコードを呼び出すことができる他の手段はありますか?

役に立ちましたか?

解決

これは、DLLがWindows用語であるためです。 Linuxでは、共有ライブラリと呼ばれます。

http://www.linux。 org / docs / ldp / howto / Program-Library-HOWTO / shared-libraries.html

他のヒント

として スクリブズ Linux であなたが求めている用語は共有オブジェクトだと言いました。これらにはファイル拡張子が付けられます .so.

gcc を使用すると、 .so を使用して -shared オプション。

例えば。


gcc -shared -o libfoo.so foo.c

共有オブジェクトに lib*.so という名前を付けた場合、次のコマンドを使用してそれに対してコンパイルできます。 -l リンカーのオプション。この状況では「lib」が推測されることに注意してください。

つまり。


ld -o a.out -lfoo someobject.o 

あるいは、ロードすることもできます .so 実行時のファイルと同様に、 .dlls、dlopen() と dlsym() を使用します。

開始したばかりの場合は多くですが、ある時点でUlrich Drepper’ s“ 共有ライブラリの作成方法。”

DLLファイルではなく.SOファイル、つまりStackOverflowではなく共有オブジェクト:)が必要なのでしょうか。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top