boost 安装_Win10 + VS2019 编译安装 Boost

本文详细介绍了如何在Windows 10环境下,使用Visual Studio 2019编译Boost 1.54.0版本。过程中涉及设置环境变量、解决cl命令找不到、ctype.h缺失路径、编译命令详解以及针对编译错误的解决方案。成功编译后,会生成相应的lib和bin文件夹。
摘要由CSDN通过智能技术生成

要编译的 Boost 版本:1.54.0。

假设 Boost 根目录为 ${boost_root}

首先打开 Windows PowerShell,执行如下命令:

cd ${boost_root}
.bootstrap.bat

如果之前没有设置 cl 命令的环境变量,这里将会报如下错误:

'cl' 不是内部或外部命令,也不是可运行的程序。

解决这个问题的方法是将 cl 命令的位置添加到系统的环境变量中,这里假设 VS 被安装到了 C 盘中,则需要将以下内容添加到 Path 环境变量中:

C:Program Files (x86)Microsoft Visual Studio2019CommunityVCToolsMSVC14.26.28801binHostx64x64

环境变量修改之后必须重启才能生效。

添加完以上环境变量之后,再次运行 .bootstrap.bat ,如果出现以下错误:

fatal error C1034: ctype.h: 不包括路径集。

则说明是 Windows 环境变量没有配置或没配置好。此时我们需要在系统的环境变量里面新建两个环境变量,它们的变量名和变量值分别为:

# 第一个环境变量
变量名:INCLUDE
变量值:C:Program Files (x86)Microsoft Visual Studio2019CommunityVCToolsMSVC14.26.28801include
        C:Program Files (x86)Windows Kits10Include10.0.18362.0shared
        C:Program Files (x86)Windows Kits10Include10.0.18362.0ucrt
        C:Program Files (x86)Windows Kits10Include10.0.18362.0um
        C:Program Files (x86)Windows Kits10Include10.0.18362.0winrt

# 第二个环境变量
变量名:LIB
变量值:C:Program Files (x86)Microsoft Visual Studio2019CommunityVCToolsMSVC14.26.28801libx64
        C:Program Files (x86)Windows Kits10Lib10.0.18362.0ucrtx64
        C:Program Files (x86)Windows Kits10Lib10.0.18362.0umx64

添加完之后,重启,使环境变量生效。

然后再次运行 .bootstrap.bat ,正常情况下应该输出以下信息:

c6dd2bcf158a7c479fa4f79948919def.png

然后接下来要运行 .b2 命令来进行编译,编译命令如下:

.b2 install --prefix=D:CCLibLibsboost_1_54_0boost_1_54_0install_dir --build-type=complete --toolset=msvc-14.2 threading=multi address-model=64

关于上述命令中各参数的详细解释,参见 https://blog.csdn.net/s_lisheng/article/details/72871218 。

但是执行上述命令之后可能会报如下错误:

error: msvc initialization: parameter 'version' inconsistent
error: no value was specified in earlier initialization
error: an explicit value is specified now

解决方法是修改 ${boost_root} 目录下的 project-config.jam 文件,如果用的是 VS2019,则可以将里面的内容修改成:

import option ; 
 
using msvc : 14.2 : "C:Program Files (x86)Microsoft Visual Studio2019CommunityVCToolsMSVC14.26.28801binHostx64x64cl.exe" ; 
 
option.set keep-going : false ; 

然后再次运行 .b2 命令,如果没有什么什么问题应该就可以正常编译了。

编译之后,会生成一个 include 文件夹和一个 lib 文件夹。

至此,编译过程结束。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值