我在
中解压缩Boost库C:\升压
然后跑
bootstrap.bat
b2.exe install
通过Visual Studio 2017的开发人员命令提示符。
它为我创建了两个文件夹:
C:\boost\include
C:\boost\lib
我添加到
VC++ Directories > Include Directories
Linker > General > Additional Library Directories
分别
现在,构建以下代码:
#define _WIN32_WINDOWS 0x0501
#define _WINSOCK_DEPRECATED_NO_WARNINGS
#include <boost/asio.hpp>
int main()
{
return 0;
}
产生以下错误:
1>main.cpp
1>Unknown compiler version - please run the configure tests and report the results
1>LINK : fatal error LNK1104: cannot open file 'libboost_system-vc120-mt-gd-1_55.lib'
令我惊讶的是VC++
查找libboost_system-vc120-mt-gd-1_55.lib
,而构建的lib
文件是:
libboost_system-vc-mt-1_55.lib
libboost_system-vc-mt-gd-1_55.lib
缺少一个号码。是否与Boost
未知的编译器版本 - 请运行配置测试并报告结果
更新
请勿将此问题与here相关联。路径正确,因为我已b2.exe
切换install
。此外,选项(C ++→常规→附加包含目录参数)与旧的Visual Studio IDE相关。我知道解释这些基础知识是非常愚蠢的。但不幸的是,我看到强烈坚持这种联系。
更新
令人遗憾的是,一群用户在知道错误的情况下通过链接到错误的问题将此问题标记为重复。如果你犯了错误,不要坚持。
答案 0 :(得分:3)
是的,这很可能是相关的。 Boost构建无法确定Visual Studio编译器版本,因此它正在编写通用的lib名称,如libboost_system-vc-mt-1_55.lib
。 Header试图使用最后一个已知版本的Visual Studio,用于Boost 1.55(VS2013或vs120)。尝试使用last版本的boost,它应该支持VS2017。