C言語 ダイナミックライブラリの作り方と使い方【徹底解説】
動的ライブラリ(共有ライブラリとも呼ばれる)を作成するには、通常以下の手順に従う必要があります。
- 通常、ライブラリのソースコードファイルは、.c拡張子のファイルであり、ライブラリ内で必要とされる関数やデータ構造の実装コードが含まれています。
- ソースコードファイルをコンパイルして共有ライブラリとしてリンクします。コンパイル時には、-sharedオプションを使用して生成されたオブジェクトファイルを共有ライブラリとしてリンクする必要があります。例えば、以下のコマンドを使用して、mylib.cファイルをコンパイルしてlibmylib.so共有ライブラリを生成することができます:
gcc -shared -o libmylib.so mylib.c
- 他のプログラムがアクセスできるように、生成された共有ライブラリファイルをシステムパスに配置します。一般的に、共有ライブラリファイルは/usr/libまたは/usr/local/libディレクトリにコピーすることができます。
- そのプログラムでライブラリを使用する場合は、ライブラリのヘッダーファイルを含めて、共有ライブラリをリンクします。たとえば、libmylib.soライブラリを使用するmain.cプログラムを作成し、次のコマンドを使用してコンパイルリンクしてください。
gcc -o main main.c -lmylib
-lmylibというオプションは、コンパイラにlibmylib.soという名前の共有ライブラリをリンクするように指示します。
- 生成された実行ファイルを実行すると、共有ライブラリがダイナミックにロードされ、その中の関数が呼び出されます。
要创建和使用动态库,你需要编写库的源代码、编译生成共享库,然后将共享库放入系统路径,并编写使用库的程序并链接共享库。