0
点赞
收藏
分享

微信扫一扫

QT下配置Boost库

QT下配置Boost库

前言

当使用别人的QT工程,复制到自己机器上,发现报如下错误

QT下配置Boost库_qt
从QtCreator报错来看是找不到Boost相关文件和库

问题解决

首先去官网下载Boost库

编译boost库
下载boost源码:
大家可以在​​​boost官网​​​上下载, 选择需要的版本, 尽量避免使用beta release 版本, 测试版的风险太大, 会出一些莫名其妙的问题, 成了小白鼠。
解压下载的源文件到合适的目录,注意: 此时的目录无关最终的真正有用的头文件, 库的位置, 所以强迫症患者不需要太在意!

生成b2.exe和bjam.exe可执行文件
win + r 然后输入cmd, 启动命令行窗口:
进入build.bat所在的目录 boost根目录\boost_1_71_0\tools\build\src\engine
build mingw
QT下配置Boost库_qt_02

编译完之后在当前目录会生成b2.exe和bjam.exe可执行文件,将这两个文件拷贝到boost源代码的根目录下。
QT下配置Boost库_boost库_03

QT下配置Boost库_根目录_04
执行编译
在命令行中切换目录到boost源文件的根目录
创建一个目录:C:\Boost, 此目录将用来存放编译的结果
执行安装命令:bjam --toolset=gcc --stagedir=C:\Boost architecture=x86 address-model=64 link=shared runtime-link=shared threading=multi install 此次编译需要大概半个小时, 大家可以休息一会。
解释:
toolset=gcc 表示编译器平台这里用的是vs2008 如果用gcc可以改为toolset=msvc-9.0
link=shared shared 表示编译出动态库。如果要编译为静态库修改为link=static
address-- model=64 表示编译为64位,如果不写默认是32位。
threading=multi 表示支持多线程, 只支持单线程用single
runtime-link=shared 决定是静态还是动态链接C/C++库
–stagedir=stagedir 指定编译后存放位置
编译结束后, 就会在指定目录下存放lib/include文件。

在Qt 中使用boost库

配置 .pro 文件
在新建项目的pro文件里添加如下信息
QT下配置Boost库_根目录_05
QT下配置Boost库_Boost配置_06
在计算机环境变量中配置

  1. BOOSTDIR
  2. BOOSTLIB_VS2017
    步骤
  3. 我的电脑
    QT下配置Boost库_Boost配置_07
    QT下配置Boost库_qt_08
    QT下配置Boost库_源文件_09
    然鹅问题依旧

第二种方法,直接在QtCreator的环境变量中配置
QT下配置Boost库_源文件_10
问题解决,编译通过

参考:​


举报

相关推荐

0 条评论