2012-03-24 22 views
1

私はVC2011プロジェクトでBoost.Regexを使用しています。最新のBoost.Regexは静的でダイナミックなライブラリにコンパイルされています。boost :: regexで自分のプロジェクトをコンパイルして静的にリンクしました

私は静的ライブラリ(boost_regex-vc110-MT-1_49.lib)をリンクするために私のVCプロジェクトを強制しましたが、プロジェクトがコンパイルされた後、それが実行されたとき、それがいることを報告します

boost_regex-vc110-MT-1_49.dllを逃し、私は同様の問題と誰かが/D "BOOST_ALL_NO_LIB"を使用することを示唆しているグーグル、私はこれを試してみましたが、それは解決しません。

+0

完全な再構築(クリーン・アンド・ビルド)を実行しましたか? – hmjd

+0

はい、しました。しかし、それはプログラムを助けるものではありません。しかし、boost :: randomも使用しているので、私はひとつ気づきました。静的なlib(boost_random-vc110-mt-1_49.lib)をプロジェクトに手動でリンクすると、実行中にdllを要求しません。 – user1285419

答えて

0

BOOST_ALL_NO_LIBを定義する場合、すべてのBoost依存関係を手動で指定する必要があります。したがって、すべてを静的にリンクする場合は、BOOST_ALL_NO_LIBを定義し、すべてを手動でリンクしてください。それ以外の場合はスレッドだけの場合はBOOST_REGEX_NO_LIBを使用し、手動でBoost.Regexを手動でリンクしてください。

関連する問題