2015-04-22 54 views
0

到目前为止,我已经在多个平台上发生过这种情况(Mac OS 10.10,Solaris Sparc 10,Debian 7)。当我尝试使用b2编译boost时,它会选择一个默认体系结构。如果我想切换架构,什么都不会发生。这是我尝试过的命令。在Windows上,这工作正常。Boost 1.58地址模型没有效果

OSX

./b2 architecture=combined address-model=32_64 install --prefix=./osx/clang/universal 
./b2 architecture=combined address-model=32_64 
./b2 --architecture=combined --address-model=32_64 install --prefix=./osx/clang/universal 

在这种情况下,它总是试图建立64位。

Solaris/Linux操作系统

./b2 install --prefix=./<plaform>/<compiler>/<bitness> address-model=64 
./b2 install address-model=64 --prefix=./<plaform>/<compiler>/<bitness> 
./b2 address-model=64 install --prefix=./<plaform>/<compiler>/<bitness> 
./b2 install --prefix=./<plaform>/<compiler>/<bitness> architecture=x86 address-model=64 

在这种情况下,它始终是构建32位。

我没有删除并重建b2使用bootstrap.sh为每个编译器和平台,我试图建立提升。

有什么我需要改变或设置?我找不到任何好的文档。

更新:它看起来像architecture=combined的OSX意味着PowerPC和x86的芯片架构suppoted。尝试没有它,仍然没有改变。同样,即使将标签设置为组合,它仍然声称它只是为x86体系结构构建的。在编译器部分找到该信息here

回答

0

如果你还指定cxxflags = -m32,那么应该工作。