Code :: blocksを使用して静的ライブラリをコンパイルします。出力結果はlibstatic.aファイルです。今、コンパイルされた関数を使用するためにライブラリにリンクするにはどうすればよいですか?
(#include "libstatic.a"を使用しようとしましたが、私のプロジェクトはコンパイルされません)
cc -o yourprog yourprog.c -lstatic
または
cc -o yourprog yourprog.c libstatic.a
あなたがすべき #include "libstatic.h"
、つまり、コード内で適切なヘッダーファイルを使用し(thatsコードがコンパイルされない理由)、libstatic.a
は、入力ライブラリの1つとしてリンカーオプションで指定します。
この webpage には、静的ライブラリへのリンクに関するいくつかの例があります。
gcc -I. -o jvct jvct.c libjvc.a
メイクファイルでライブラリパスを設定する必要がありました。この場合、次を使用できます。
gcc -o myapp main.c -L. -lstatic
gcc -I. -o jvct jvct.c libjvc.a
純粋に静的にリンクするには、-static
を使用します
cc -static yourprogram.c libstatic.a