当前位置:  开发笔记 > 编程语言 > 正文

如何在Windows上构建x64 Boost库?

如何解决《如何在Windows上构建x64Boost库?》经验,为你挑选了2个好方法。

我已多次构建x86 Boost库,但我似乎无法构建x64库.我启动"Visual Studio 2005 x64交叉工具命令提示符"并运行我的常规构建:

bjam --toolset=msvc --build-type=complete --build-dir=c:\build install

但它仍然生成x86 .lib文件(我用dumpbin/headers验证了这一点).我究竟做错了什么?



1> macbirdie..:

您需要添加address-model=64参数.

看这里.


你能解释一下吗?C:\ Boost\boost_1_61_0>.\ b2 --stagedir = lib\x64 architecture = x86 address-model = 64 link = static --build-type = complete stage执行配置检查 - 32位:是
这个答案也适用于较新的boost构建工具`b2`.

2> Teemu Ikonen..:

接受的答案是正确的。如果有人用谷歌搜索此答案,但仍然无法生成x64版本,则添加此代码。

以下是在Visual Studio 15 2017 Community Edition上构建Boost 1.63所要做的。

从VS环境cmd shell执行的命令。工具-> Visual Studio命令提示符

C:\Work\Boost_1_63> C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat amd64
C:\Work\Boost_1_63> bootstrap.bat
C:\Work\Boost_1_63> bjam -j4 architecture=x86 address-model=64 link=static stage
C:\Work\Boost_1_63> bjam --prefix=C:\opt\boost architecture=x86 address-model=64 link=static install

您可以使用dumpbin验证生成的.lib是x64:

C:\Work> dumpbin /headers C:\work\boost_1_63\stage\lib\libboost_locale-vc140-mt-1_63.lib | findstr machine
8664 machine (x64)
8664 machine (x64)
8664 machine (x64)
8664 machine (x64) 
...

推荐阅读
sx-March23
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有