温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Qpid第二课 配置Boost依赖库环境变量

发布时间:2020-06-12 03:19:29 来源:网络 阅读:429 作者:fengyuzaitu 栏目:软件技术

场景
 Qpid依赖Boost库,一般情况下,使用CMake生成VS解决方案的时候,需要指定Boost头文件和库文件目录,否则出现如下的错误编译提示:
Could not find the following Boost libraries:  boost_sysytem ,boost_thread 

解决方案一:
在环境变量中新建一个:名为BOOST_ROOT,值为E:\work2\boost_1_58_0

解决方案二:
在环境变量中新建一个:名为BOOST_INCLUDEDIR,值为E:\work2\boost_1_58_0
在环境变量中新建一个:名为BOOST_LIBRARYDIR,值为E:\work2\boost_1_58_0\stage\lib
重启系统,让环境变量生效
 
注意事项
1)CMake只能搜索到Boost编译的动态库,静态库编译无法搜索
2)直接从官方下的编译好的包,而编译好的包里头,库文件目录的名字是lib64-msvc-12.0,需要修改为lib或者stage/lib
FindBoost.cmake文件是如何搜索Boost lib文件的呢?
下面是搜索Boost lib的脚本代码,当然如果不修改库文件目录可以添加如下
      ${Boost_INCLUDE_DIR}/lib64-msvc-12.0
    list(APPEND _boost_LIBRARY_SEARCH_DIRS_${c}
      ${Boost_INCLUDE_DIR}/lib
      ${Boost_INCLUDE_DIR}/../lib
      ${Boost_INCLUDE_DIR}/stage/lib
      )

3)下载Boost源码编译动态库
b2.exe  --build-type=complete --build-dir=build_tmp toolset=msvc-14.0 address-model=32 stage
说明:stage说明将编译的库文件复制到stage目录,生成过程的文件保存在build_tmp目录,toolset指定使用VS2015编译器

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI