我正在尝试为ARM平台(poky工具链)交叉编译Boost库,我是新的交叉编译。我在第一步遇到问题 - 运行bootstrap.sh。我看到很多关于boost交叉编译的帖子,但在bootstrap级别没有那么多帮助。
几个问题:
1)我应该在'user-config.jam'中准确填写什么?我试过了:
using gcc : arm : arm-poky-linux-gnueabi-g++ ;
我看到许多指定编译器的确切路径。
2)放置user-config.jam文件的最佳位置在哪里?我尝试了我的家(〜)文件夹和当前文件夹。
3)工具链有一个名为“environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi”的文件,我应该在运行bootstrap之前“获取它”吗?
感谢任何帮助,谢谢。
答案 0 :(得分:0)
常见任务-1.64.0 https://www.boost.org/doc/libs/1_64_0/doc/html/bbv2/tasks.html
交叉编译 Boost.Build支持使用gcc和msvc工具集进行交叉编译。
使用gcc时,首先需要在user-config.jam中指定交叉编译器(请参阅“配置”部分),例如:
<div id="portfolio" class="container-fluid text-center bg-grey">
<h2>Portfolio</h2><br>
<div class="row text-center slideanim">
<div class="col-sm-4">
<div class="thumbnail">
<img src="https://www.lastampa.it/image/contentid/policy:1.35414079:1561364425/MMNX-4954-ToSuaOceanTrench.jpg?f=gallery_1280&h=702&w=1280&$p$f$h$w=6352f9b" width="400" height="300">
<div class="overlay">
<h3>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et.</h3>
</div>
<strong>Lorem ipsum dolor sit amet</strong>
</div>
</div>
<div class="col-sm-4">
<div class="thumbnail">
<img src="https://www.lastampa.it/image/contentid/policy:1.35414077:1561364425/MMNX-4954-1280px-Calanque_de_Sormiou_5.jpg?f=gallery_1280&h=702&w=1280&$p$f$h$w=c0a1b8f" width="400" height="300">
<div class="overlay">
<h3>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et.</h3>
</div>
<strong>Lorem ipsum dolor sit amet</strong>
</div>
</div>
<div class="col-sm-4">
<div class="thumbnail">
<img src="https://www.lastampa.it/image/contentid/policy:1.35414078:1561364425/MMNX-4954-1280px-Jenny_Lake_boat_ride.jpg?f=gallery_1280&h=702&w=1280&$p$f$h$w=6d2bd4e" width="400" height="300">
<div class="overlay">
<h3>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et.</h3>
</div>
<strong>Lorem ipsum dolor sit amet</strong>
</div>
</div>
</div>
</div>
然后,如果主机和目标操作系统相同,例如Linux,则可以要求使用此编译器版本:
using gcc : arm : arm-none-linux-gnueabi-g++ ;
如果要与主机目标操作系统不同,则需要另外指定target-os功能的值,例如:
b2 toolset=gcc-arm
有关允许的操作系统名称的完整列表,请参阅target-os功能的文档。
使用msvc编译器时,只能交叉编译到32位主机上的64位系统。有关详细信息,请参见“ 64位支持”部分。