2010-11-30 19 views

答えて

5

リンクを-lrtまたは-pthreadで。 manページに記載されているように

gcc your_code.c -lpthread -o your_code

+0

私はこれでかなり新しいです。 -lrtや-pthreadを使ってリンクすることで何を意味するかを少し詳しく説明できますか? – Unome

+1

@確かに[リンク](http://en.wikipedia.org/wiki/Linker_%28computing%29)を参照してリンクの内容を理解してください。 gccコマンドに渡された '-l 'オプションが表示されたときはいつでも、実行可能ファイルを作成するのに必要なオブジェクトコードを見つけるためにというライブラリを見る必要があることをリンカに伝える指示です。 OPの場合、 'sem_init'という関数のオブジェクトコードは' pthread'ライブラリにあります。 – SiegeX

+0

驚くべきことに、私が与えられたコードはmakeファイルで囲まれていたので、それを実行するためには-pthreadを追加しなければなりませんでした。ありがとう! – Unome

1

のように、あなたは-lrt-pthreadどちらかとリンクしなければなりません。

関連する問題