Boost.Thread1.34.1ライブラリにどのようなリンクオプションが存在するかは私にはわかりません。私はUbuntu8.04を使用しており、コンパイルと実行の両方を使用しているとき、boost_thread
またはboost_thread-mt
リンクしているときに、これらまたは他のリンクオプションに関するドキュメントが上記のリンクに表示されないことがわかりました。
どのようなBoost.Threadリンクオプションが利用可能であり、それらはどういう意味ですか?
Boost.Thread1.34.1ライブラリにどのようなリンクオプションが存在するかは私にはわかりません。私はUbuntu8.04を使用しており、コンパイルと実行の両方を使用しているとき、boost_thread
またはboost_thread-mt
リンクしているときに、これらまたは他のリンクオプションに関するドキュメントが上記のリンクに表示されないことがわかりました。
どのようなBoost.Threadリンクオプションが利用可能であり、それらはどういう意味ですか?
上手...
最初の面白いことは-mt
、名前の修飾子が、ライブラリがマルチスレッドに対応していることを示すことです。boost_thread
これは、 (この修飾子がないと)マルチスレッドで安全ではない可能性があると私たちに信じさせる可能性があります...
しかし、本当のことは(私自身のUbuntu 10.04ボックスで見られるように)、boost_thread
へのソフトリンクboost_thread-mt
であるということです。つまり、2つは同じです。
確認したい場合は、ubuntuでコンソールを開いて(名前が長いためコンソールをフルスクリーンにします)、次のように入力します。
cd /usr/lib
Boostライブラリがあるディレクトリに移動します。その後:
ls -l ./libboost_thread*
これにより、、で始まるすべてのファイルlibboost_thread
が追加情報とともに一覧表示されます。結果は次のようになります。
[...] ./libboost_thread.a
[...] ./libboost_thread-mt.a -> libboost_thread.a
ご覧のとおり、libboost_thread.a
は静的ライブラリであり、libboost_thread-mt.a
へのソフトリンクです。libboost_thread.a
Boostライブラリの命名スキームの詳細については、http ://www.boost.org/doc/libs/release/more/getting_started/unix-variants.html#library-namingを参照してください。