我正在尝试将Boost线程的共享库链接到我的应用程序中。
系统:Windows8
IDE:Visual Studio 2010
我使用以下命令构建Boost库:
b2 --with-thread --build-type=complete link=shared
我可以看到
boost_thread-vc100-mt-gd-1_55.dll
boost_thread-vc100-mt-gd-1_55.lib
和stage/lib目录中的其他文件
我已将路径添加到“其他库目录和链接器输入”选项中,如下所示:
其他图书馆目录:
C:/boost_1_55_0_dyn/stage/lib
输入:
C:\boost_1_55_0_dyn\stage\lib\boost_thread-vc100-mt-gd-1_55.lib
我不知道为什么Visual Studio在寻找libboost_thread-vc100-mt-gd-1_55.lib。我没有在属性中的任何地方或任何地方提到libboost_thread-vc100-mt-gd-1_55.lib。我什至在项目中搜索我所有的文件和文件夹,libboost_thread-vc100-mt-gd-1_55.lib在任何地方都没有提及。
最佳答案
好吧,我忘了将BOOST_ALL_DYN_LINK放在预处理器定义中。如果未定义BOOST_ALL_DYN_LINK,则boost将寻找静态库,这就是为什么它寻找libboost_thread-vc100-mt-gd-1_55.lib的原因。
关于visual-studio-2010 - 错误LNK1104 : cannot open file 'libboost_thread-vc100-mt-gd-1_55.lib' ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22473898/