#author("2017-11-27T23:53:14+09:00","default:wikiwriter","wikiwriter")
#author("2017-11-28T00:17:16+09:00","default:wikiwriter","wikiwriter")
&tag(Boost/FAQ);
*目次 [#p53431b0]
#contents
*関連ページ [#p91d6b62]
*参考情報 [#v508de04]

*自動リンクの仕組み [#v2caa8a2]
-[[Boost の autolink がやたらと鬱陶しい件 - muddy brown thang:http://d.hatena.ne.jp/moriyoshi/20070608/1181309708]]にあるように、autolink.hppで自動リンクが実行される。
#pre{{
#ifdef BOOST_AUTO_LINK_TAGGED
#  pragma commentcomment(lib, BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) BOOST_LIB_THREAD_OPT BOOST_LIB_RT_OPT ".lib")
#  ifdef BOOST_LIB_DIAGNOSTIC
#     pragma message ("Linking to lib file: " BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) "-" BOOST_LIB_TOOLSET BOOST_LIB_THREAD_OPT BOOST_LIB_RT_OPT "-" BOOST_LIB_VERSION ".lib")
#  endif
#elif defined(BOOST_AUTO_LINK_NOMANGLE)
#  pragma comment(lib, BOOST_STRINGIZE(BOOST_LIB_NAME) ".lib")
#  ifdef BOOST_LIB_DIAGNOSTIC
#     pragma message ("Linking to lib file: " BOOST_STRINGIZE(BOOST_LIB_NAME) ".lib")
#  endif
#else
#  pragma comment(lib, BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) "-" BOOST_LIB_TOOLSET BOOST_LIB_THREAD_OPT BOOST_LIB_RT_OPT "-" BOOST_LIB_VERSION ".lib")
#  ifdef BOOST_LIB_DIAGNOSTIC
#     pragma message ("Linking to lib file: " BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) "-" BOOST_LIB_TOOLSET BOOST_LIB_THREAD_OPT BOOST_LIB_RT_OPT "-" BOOST_LIB_VERSION ".lib")
#  endif
#endif
}}
-ライブラリの見つけ方二関しては[[boostがライブラリを見つける方法 – ブーログ:http://ambiesoft.fam.cx/blog/archives/3669]]が参考になりそう。BOOST_LIB_DIAGNOSTICを定義することで診断することができる。

*32bit vs 64bit [#e6d0ccd1]
-[[Builtin tools:http://www.boost.org/build/doc/html/bbv2/reference/tools.html#bbv2.reference.tools.compiler.msvc]]の64-bit supportのところが参考になる。
-64bitの方が高速だけど、気にしないならば32bitの方が安定なのかも。
-[[Visutal Studio で Boost C++ Libraries をビルドする - Life like a clown:http://clown.hatenablog.jp/entry/20110323/1300886446]]によると64bit版ライブラリ作成時にはx64コマンドプロンプトの起動が必要と思えるが、[[Builtin tools:http://www.boost.org/build/doc/html/bbv2/reference/tools.html#bbv2.reference.tools.compiler.msvc]]には以下のような記述がある。
#pre{{
The (AMD64 host, AMD64 target) compiler will be used automatically when you are generating AMD64 code and are running 64-bit Windows on AMD64. The (IA64 host, IA64 target) compiler will never be used, since nobody has an IA64 machine to test.
}}






トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS