C++学习(二二一)交叉编译原理

本文介绍了使用交叉编译工具链编译源代码的过程,包括生成build.ninja文件及使用ninja.exe进行编译。文章重点阐述了在资源受限的嵌入式系统中采用交叉编译的原因,并解释了如何在x86平台上为ARM目标设备编译代码。

用交叉编译工具链编译源代码,最终生成可在目标平台上运行的代码。

过程如下:

1、生成build.ninja(ninja.exe)

2、make(ninja.exe -f build.ninja)

交叉编译,英文常写作cross compile,也有其他写法:crosscompile, cross compiling等。


在进行嵌入式开发时,手上有个嵌入式开发板,CPU是arm的,然后在x86的平台下开发,比如Ubuntu的Linux,或者是Win7。然后就需要在x86的平台上,(用交叉编译器)去编译你写好的程序代码,编译生成的(可执行的)程序,是放
到目标开发板,arm的CPU上运行的
此所谓:在x86平台上编译,在ARM平台上运行

 嵌入式系统中的资源太少
交叉编译出来的程序,所要运行的目标环境中,各种资源,都相对有限,所以很难进行直接的本地编译,最常见的情况是:
因为编译,开发,都需要相对比较多的CPU,内存,硬盘等资源,而嵌入式开发上的那点资源,只够嵌入式(Linux)系统运行的,没太多剩余的资源,供你本地编译。所以需要在别的平台上进行跨平台编译,然后在其他的平台上运行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值