首页 > 后端开发 > C++ > 正文

c++ Boost库安装与使用_c++准标准库Boost配置指南【环境搭建】

尼克
发布: 2025-12-17 09:37:17
原创
226人浏览过
Boost是非官方但被广泛视为“准标准库”的C++库,头文件库可直接使用,filesystem等需编译二进制库;Windows用bootstrap.bat生成b2.exe并b2编译,Linux用bootstrap.sh生成b2后编译;项目中需正确设置-I头文件路径及-L/-l或/clink库路径与名称。

c++ boost库安装与使用_c++准标准库boost配置指南【环境搭建】

Boost 不是官方标准库,但被广泛视为“准标准库”,很多特性后来被 C++11/14/17 吸收。它无需编译安装也能用(头文件-only 库),但部分组件(如 filesystemsystemregex)需编译二进制库。下面以主流方式说明如何在 Windows(MSVC)和 Linux(GCC)下正确配置。

下载与解压 Boost 源码

访问官网 boost.org,下载最新版源码压缩包(如 boost_1_85_0.7z)。解压到无中文、无空格路径,例如:

  • Windows:C:\boost_1_85_0
  • Linux:/opt/boost_1_85_0

解压后目录里有 boost/(头文件主目录)、libs/(示例与文档)、bootstrap.bat(Windows)或 ./bootstrap.sh(Linux)。

生成 b2 构建工具(关键一步)

Boost 使用自研构建系统 b2(旧称 bjam),必须先生成它:

立即学习C++免费学习笔记(深入)”;

  • Windows(管理员权限 CMD 或 PowerShell):
    cd C:\boost_1_85_0<br>bootstrap.bat vc143
    登录后复制
    (对应 VS2022;vc142=VS2019,vc141=VS2017)
  • Linux:
    cd /opt/boost_1_85_0<br>./bootstrap.sh --prefix=/usr/local
    登录后复制

成功后生成 b2(Linux/macOS)或 b2.exe(Windows),位于 Boost 根目录。

编译需要的二进制库(按需)

不是所有 Boost 库都要编译。头文件库(如 shared_ptroptionalrange)直接 #include <boost></boost> 即可。以下库需链接预编译版本:

  • boost_filesystemboost_system(路径操作、错误码)
  • boost_regex正则表达式
  • boost_threadboost_chrono(多线程与时间)

编译命令示例(Windows):

CodeGeeX
CodeGeeX

智谱AI发布的AI编程辅助工具插件,可以实现自动代码生成、代码翻译、自动编写注释以及智能问答等功能

CodeGeeX 191
查看详情 CodeGeeX

b2 toolset=msvc-14.3 link=static runtime-link=shared address-model=64 -j8 --build-type=complete stage

说明:
toolset:指定编译器(vs2022 对应 msvc-14.3)
link=static:生成静态库(.lib)
runtime-link=shared:动态链接 MSVCRT(避免运行时冲突)
address-model=64:生成 64 位库(默认可能为 32 位)
stage:库输出到 stage/lib/ 目录

Linux 类似(用 gcc toolset,生成 .a/.so)。

在项目中使用 Boost

头文件库(最常用):
只需在代码中包含,并确保编译器能找到 boost/ 目录:

#include <boost/optional.hpp><br>boost::optional<int> x = 42;
登录后复制

编译时加头文件路径:
g++ -I /opt/boost_1_85_0 main.cpp
cl /I"C:\boost_1_85_0" main.cpp

二进制库(如 filesystem):
除头文件路径外,还需链接库文件:

  • Linux:g++ -I/opt/boost_1_85_0 main.cpp -L/opt/boost_1_85_0/stage/lib -lboost_filesystem -lboost_system
  • Windows(MSVC):cl /I"C:\boost_1_85_0" main.cpp /link "C:\boost_1_85_0\stage\lib\boost_filesystem-vc143-mt-x64-1_85.lib" "C:\boost_1_85_0\stage\lib\boost_system-vc143-mt-x64-1_85.lib"

注意库名含编译标识(如 -mt=多线程,-x64=64位,-1_85=版本),务必匹配你编译出的文件名。

基本上就这些。Boost 配置不复杂但容易忽略 toolset 和链接模式匹配,建议首次用最小例子验证(如只用 optional 测试头文件路径,再逐步加入 filesystem 测试链接)。官方文档 Getting Started 是最权威参考。

以上就是c++++ Boost库安装与使用_c++准标准库Boost配置指南【环境搭建】的详细内容,更多请关注php中文网其它相关文章!

c++速学教程(入门到精通)
c++速学教程(入门到精通)

c++怎么学习?c++怎么入门?c++在哪学?c++怎么学才快?不用担心,这里为大家提供了c++速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号