1

「5.3.4 Invoke b2」を使用してブーストのドキュメントを読み、ブースト ライブラリをヘッダーおよびリンカー ディレクトリにリンクする方法の詳細を説明するフォーラム スレッドをフォローアップしました。そして、 bjam.exe コントロールを説明したこのクールなブースト関連の wiki を見つけました。

#include <boost/thread/thread.hpp>main.cppに配置

そして、このリンカ エラーが発生し、既存のヘルプ スレッドで問題が x64 にあることが特定されました。

エラー:

error LNK2019: unresolved external symbol "class boost::system::error_category const & __cdecl boost::system::generic_category(void)" (?generic_category@system@boost@@YAAEBVerror_category@12@XZ) referenced in function "void __cdecl boost::system::`dynamic initializer for 'posix_category''(void)" (??__Eposix_category@system@boost@@YAXXZ)  main.obj

error LNK2019: unresolved external symbol "class boost::system::error_category const & __cdecl boost::system::system_category(void)" (?system_category@system@boost@@YAAEBVerror_category@12@XZ) referenced in function "void __cdecl boost::system::`dynamic initializer for 'native_ecat''(void)" (??__Enative_ecat@system@boost@@YAXXZ)  main.obj

それらは似ている、何かについて'posix_category'、何かについて'native_ecat'

そこで、x64 ブースト ライブラリを構築しようとしましたが、これらを配置する場所について矛盾する指示が見つかりました。

また、vs2008 構成を x32 に戻そうとしました -> solutionExplorer/solution_properties/configuration_manager/active_solution_platform - Win32、ビジュアル スタジオを閉じて再度開きました - 追加のディレクトリ C/C++/general および Linker/general を Boost/root および Boost/stage に再リンクしました/lib - エラーなしでコンパイルされました。

b2 コマンドでの私の最善の推測は--toolset=msvc-9.0 address-model=64 --build-type=complete --stagedir=lib\x64 stage

VS2008 で x64 バージョンのブーストをビルドしてインストールする方法について、簡潔な指示を出してください。また、リリースとデバッグについて wiki は何について話していましたか - それらはBoost 呼び出しではありませんか?

4

1 に答える 1

-3

C++ 11 を使用する

多かれ少なかれ、使用したいブーストのすべての機能が含まれており、大学のサーバーでブーストライブラリを構築し、リモートのg ++​​ビルドを参照する方法を理解せずにg ++でコンパイルします-それでほとんどすべてを解決しました

于 2013-03-22T11:03:52.103 に答える