私の開発ショップは、非常に便利な Python ベースのテスト スイートをまとめました。これを使用して、Linux ベースの C++ コードをテストしたいと考えています。Boostに同梱されているテストプロジェクトをコンパイルして入手しました(ディレクトリに「bjam」と入力すると動作します)が、実際のプロジェクトに問題があります。
ソース (v1.35.0) からブースト ライブラリと bjam をビルドします。bjam を実行すると、bin/gcc-4.1.2/debug ディレクトリに .so が作成されます。Python を実行して「インポート」すると、次のようになります: ImportError: libboost_python-gcc41-d-1_35.so.1.35.0
: cannot open shared object file: No such file or directory
ライブラリディレクトリを見ると、次のものがあります。
libboost_python-gcc41-mt-1_35.so
libboost_python-gcc41-mt-1_35.so.1.35.0
libboost_python-gcc41-mt.so
明らかに、-mt ライブラリの代わりに -d が必要です。または、-d の代わりに -mt ライブラリを指す必要がありますが、Jamroot ファイルでそれを行う方法がわかりません。
Debian Etch のバージョンのライブラリをインストールすると、「/usr/include に Jamfile がありません」というメッセージが表示され、システム レベルの jamfile が省略されているという debian のバグがあります。
ソースから動作するようになることを期待しているので、ライブラリの問題を解決するための提案があれば、聞いてみたい.
回答 1 への回答: ヒントをありがとう。では、代わりに MT ライブラリを使用するにはどうすればよいか知っていますか? フラグが見つからないにもかかわらず、デバッグモードにいると思って使用している bjam または Jamfile に問題があるようです。GCC の呼び出しに特定のライブラリを含める方法は知っていますが、Boost 側からそれを構成する方法がわかりません。