2015-04-22 46 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,那麼應該工作。