2011-07-22 1 views
1

私はクラスをシリアル化するためにBoost C++ライブラリv1.47を使用しています(私はインストーラを使用し、VS2010のすべてを選択しました)。 私のVisual Studio 2010リンカ「Lnk1104 libboost_serialization-vc100-mt-gd-1_47.libを開くことができません」からエラーが発生しました。私は自分のインクルードと "c:¥program files¥boost¥boost_1_47¥lib"の "c:¥program files¥boost¥boost_1_47"を自分のlibsに設定しました。私は何がうまくいかないのか分からない。Boost C++ライブラリリンカエラーlibboost_serialization-vc100-mt-gd-1_47.lib

アップデートは

私はなぜ知らないが、私はブーストディレクトリからlibにファイルを置く場合を "C:プログラムファイルは、Microsoft Visual Studioのを\ \ 10.0 \ VC \ libには、" すべて問題なく動作します。ブーストロードlibファイル 何らかのダイナミック。

+0

あなたが実際にそのライブラリを構築しましたが? (libsディレクトリにそのファイルがありますか?) –

+0

@Billy ONealはい、そこにあります。 VS2010を再起動すると助けになりません。 –

答えて

0

インストーラのプリコンパイルされたライブラリは、 "boost-module-vc100 ..."形式で名前が付けられ、ライブラリ名は "libboost_module-vc100 ..."と指​​定されています。プロジェクト設定でライブラリ名を指定して、正しくリンクさせる必要があります。

すべてのブーストライブラリを自分でコンパイルしてこの問題を解決しました。現代のPCでは、それほど時間がかかりません。

+3

"boost-module-vc100 ..."という形式の名前は動的リンクに使用され、 "libboost_module-vc100 ..."という形式の名前は静的リンク用です。しかし、ソースからのBoostのビルドは、ここで最善のオプションです。 – ildjarn

1

あなたのコンピュータ上のファイルがWindows検索者で見つからない場合は、そのファイルのコピーを提供するためにboostを使用している他の人に質問してください(libboost_serialization-vc100-mt-gd-1_47.lib)。 ブーストをインストールした後、私の友人が仕事から同じ問題を抱えていましたが、ブーストフォルダーにファイルがありませんでした。同時に私はファイルをうまく拾って、コンピュータの正しいディレクトリにコピーしました。

0

この問題を解決するために、 プロパティに行く - >リンカ - >一般 - >追加のライブラリディレクトリ ブーストのパスを入力します。 ブーストパス\ステージ\ libに