0

これは実際には割り当ての一部です。基本的に、ライブラリを作成する必要があります。このライブラリは、教授が作成したテスト プログラムにリンクされます。次のようになります。

gcc -o libexample.o -c libexample.c
ar rvs libexample.a libexample.o

#later
gcc -o test test.c -L . -lexample

問題は、libexample が POSIX セマフォを使用しているため、最終的な実行可能ファイルを生成するときに pthread ライブラリとリンクする必要があることです。テスト プログラムのコンパイル方法を変更せずに、pthread ライブラリを libexample.a でパッケージ化する方法はありますか?

ありがとう!

4

1 に答える 1

1

テスト プログラムのコンパイル方法を変更せずに、pthread ライブラリを libexample.a でパッケージ化する方法はありますか?

いいえ。

単一のlibexample.aファイルのみを提供することに制限されていますか?

そうでない場合 (および GNU リンカを使用している場合)、考えられる解決策は、libexample.aリンカ スクリプトとして提供することです。これは、オブジェクト ファイルを含むなどに対してリンクlibexample_code.a-lpthread .

于 2015-03-28T20:31:21.347 に答える