链接器需要在lib文件的名称中包含编译器和Boost的版本.致命错误LNK1104
Linker requires versions of compiler and Boost in the names of lib-files. fatal error LNK1104
安装boost我运行
b2 install optimization=speed variant=debug,release --layout=tagged --prefix=BOOST_DIR
lib文件的名字看起来像
...
libboost_serialization-mt.lib
libboost_serialization-mt-gd.lib
...
当项目链接时,我得到错误
链接:致命错误LNK1104:无法打开文件'libboostrongerialization-vc140-mt- gp -1_62.lib'
这个文件没有在任何名称的项目设置中设置,只有这个文件的目录被设置。如果我将编译器和Boost版本添加到文件名,该项目将成功链接。
当我安装新版本的Boost时,我可以使项目不需要Boost lib-files重命名吗?
使用--layout=tagged
选项构建boost时,必须在包含任何boost头文件之前定义BOOST_AUTO_LINK_TAGGED
,以允许自动链接正确工作。否则,通过定义BOOST_ALL_NO_LIB
禁用自动链接,并显式指定库。
相关文章:
- 我包含了<winuser.h>,但编译器在MonitorFromWindow上抛出"未声明"
- 在使用包含冒号的类似函数的宏时,是什么导致了这种编译器差异?
- 如果函数包含静态变量,为什么编译器不执行内联?
- 为什么 C++ 编译器在"c:program filesgnu emacsinclude"中查找包含文件?
- 将 somedialog.h 包含在项目的其他部分中会使编译器看不到 ui_somedialog.h
- 是否根据编译器版本有条件地包含源文件
- 对列表类中的泛型方法禁用编译器警告 2100,该泛型方法可能包含指针,也可能不包含指针
- 有没有办法告诉 g++ 编译器,而不是在某个 -I 路径中查找包含标头
- 包含未定义行为的源代码使编译器崩溃是否合法?
- 如果类包含基类的成员,编译器是否可以利用空基优化?
- 如果类包含基类类型的成员作为第一个元素,后跟其他成员,编译器是否可以优化空基?
- 如何在 Visual Studio Code 中包含编译器标志
- 包含标头中的搜索路径因编译器而异
- CMake 编译器测试在 Android 中找不到包含目录
- GCC makefile 编译和语法。如何调用 c 编译器以及包含多个路径
- C++模板中的条件语句,只能由编译器基于条件包含
- C1001:编译器中包含 <boost/shared_ptr.hpp 时发生内部错误>
- Eclipse 编译器包含路径子目录
- 编译器每次编译主程序时都会编译所有包含的头文件吗
- libclang:添加编译器系统包含路径(Windows中的Python)