如何在QtCreator中配置使用Boost库,解决头文件找不到报错
Qt Creator配置Boost库解决头文件找不到问题
前置准备
- 把下载好的Boost压缩包解压到无中文、无空格、无特殊字符的路径下,例如
D:\dev\boost_1_82_0,避免路径识别异常。 - 注意:
boost/process.hpp是Boost 1.64版本才正式并入官方发布包的模块,如果你使用的1.55版本默认不包含该头文件,需要先升级Boost到1.64及以上版本,否则配置路径后也会触发找不到的错误。
配置步骤(按项目类型选择)
qmake项目(.pro文件管理)
- 打开项目根目录下的
.pro文件,添加Boost头文件路径:
注意路径分隔符使用正斜杠INCLUDEPATH += D:/dev/boost_1_82_0/,如果用反斜杠需要转义写为\\。 - 如果你使用的Boost模块需要链接预编译的二进制库(例如system、thread等),额外添加库路径和链接规则:
其中LIBS += -LD:/dev/boost_1_82_0/stage/lib -lboost_system-L后接库文件所在目录,-l后接对应模块的库名,按你实际使用的模块调整。 - 修改完.pro文件后,右键项目选择执行qmake,再选择重新构建即可生效。
CMake项目(CMakeLists.txt管理)
- 打开项目根目录下的
CMakeLists.txt,添加Boost相关配置:- 先指定Boost根目录:
set(BOOST_ROOT D:/dev/boost_1_82_0) - 查找Boost库,按需指定依赖的组件:
# 仅用头文件模块不需要加COMPONENTS find_package(Boost REQUIRED) # 用到需要编译的组件时写法如下 # find_package(Boost REQUIRED COMPONENTS system) - 将Boost头文件路径和库关联到你的构建目标:
target_include_directories(你的项目目标名 PRIVATE ${Boost_INCLUDE_DIRS}) # 需要链接二进制库时添加下面一行 # target_link_libraries(你的项目目标名 PRIVATE ${Boost_LIBRARIES})
- 先指定Boost根目录:
- 修改完文件后,右键项目选择重新运行CMake,再构建项目即可生效。
配置验证
可以先在代码中引入基础头文件测试:
#include <boost/version.hpp>
如果该头文件可以正常识别,说明头文件路径配置正确,此时如果还是找不到boost/process.hpp,基本可以确定是Boost版本过低导致的问题,升级版本即可解决。
内容的提问来源于stack exchange,提问作者sunny
相关产品推荐
相关产品推荐

