未能为 Visual Studio 2017 构建 boost 1.68

Posted

技术标签:

【中文标题】未能为 Visual Studio 2017 构建 boost 1.68【英文标题】:fail to build boost 1.68 for visual studio 2017 【发布时间】:2019-05-26 09:52:10 【问题描述】:

我正在尝试为 Visual Studio 2017 构建 boost 库。我按照以下步骤操作 1.打开VS 2017的开发者命令提示符 2.进入boost文件夹 3.使用bootstrap.bat

未能构建 Boost.Build 引擎。 请查阅 bootstrap.log 以获取更多诊断信息。

日志说

d:\boost_1.68_zip\boost_1_68_0\tools\build\src\engine\jam.h(71): fatal error C1083: Cannot open include file: 'ctype.h': No such file or directory
compile.c
d:\boost_1.68_zip\boost_1_68_0\tools\build\src\engine\jam.h(71): fatal error C1083: Cannot open include file: 'ctype.h': No such file or directory
constants.c
debug.c
d:\boost_1.68_zip\boost_1_68_0\tools\build\src\engine\jam.h(71): fatal error C1083: Cannot open include file: 'ctype.h': No such file or directory
...
...
...

我搜索了堆栈溢出并尝试解决问题,但似乎没有一个工作(我尝试安装不同的 sdk、通用 crt 等)

我设法通过以下手动设置 INCLUDE 和 LIB 变量来解决问题

INCLUDE
C:\Program Files\Microsoft SDKs\Windows\v6.0A\Include;C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include;
LIB
C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\8.1\Lib\winv6.3\um\x86;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\lib\x86;

可以成功获取b2.exe。

但是,当我使用 b2 --target=shared,静态

大多数库仍然是文件,它说致命错误,找不到一些 h 文件或 lib 文件。

有没有办法解决这个问题?

谢谢

【问题讨论】:

也许你应该问问 Boost 人 您是否通过this page 解决了问题。 是的,但它不起作用。 【参考方案1】:

我最终使用了一台新计算机,使用默认设置安装 Visual Studio 2017 社区版。它编译得很好。

【讨论】:

以上是关于未能为 Visual Studio 2017 构建 boost 1.68的主要内容,如果未能解决你的问题,请参考以下文章

Visual Studio 2017 添加引用报错

使用 Visual Studio 2017 从源代码为 Windows 10 构建 Perl

在Visual STudio 2017中对文件设置构建操作

如何设置 TFS 2013 以使用 Visual Studio 2013 或 Visual Studio 2017 构建

无法使用 Visual Studio 2015 构建一个简单的项目

在构建服务器上使用 MS Visual Studio Community 2017