2010-12-29 10 views
0

最新のインストーラでBoost 1.44を新しくインストールしました(http://www.boostpro.com/download/)。その後、私はVC++アンマネージドコマンドラインプロジェクトを作成しました。私はブースト入門書のチュートリアルに記載されているように#include <boost/regex.hpp>という行を追加しました。ブーストインストールディレクトリもリンクオプションに入れました。今コンパイルすると、VS2010はfatal error LNK1104: file "libboost_regex-vc100-mt-gd-1_44.lib" cannot be openedを報告します。インストールディレクトリを確認したところ、ファイルlibboost_regex-vc100-mt-s-1_44.lib(注:-gd--s-)のみがあります。誰が問題が何であるか、どのように解決できるか教えていただけますか?ありがとう!VC++ 2010でのC++ Boostインストール(ファイルが見つかりません)の問題

+0

私は同じ(または同様の)問題があることを覚えています。私はディレクトリを見て、別の静的ライブラリを見つけ、それをコピーして名前を変更しました。それは私にはおそらく間違って定義されたマクロのために間違った名前でファイルを作成したブーストビルドプロセスのようです。 –

+0

私は同じと思います。私は 'mt-s'を作成すべきである"静的にリンクされたマルチスレッド "インストールだけでなく、何らかの理由で完全なインストールを行うことで解決しました。デバッグモードでコンパイルするとき、 '-gd-'は自動的にVS2010によって使用されます。一言で言えば、完全なインストールは問題を修正します。 –

答えて

3

Boostライブラリの命名規則は、Getting Started pageに記載されています。

  • mtマルチスレッディングが
  • gを有効になっていることを示しCRTライブラリのデバッグバージョンが
  • dを連結させた示し
  • sが示すデバッグバージョンですにリンクしていることを自分のライブラリブーストのバージョンを示しブーストライブラリーによってCRTライブラリーが静的に連結されていることを確認した。

おそらく起こっていることは、あなたが欠けているフレーバーをダウンロードするBoostProインストーラを手に入れていないということです。

2

Visual Studio 2010には、C++ 0xヘッダー<regex>が用意されています。

関連する問題