Ubuntu用
GCC
编译器进行代码编译,但是
Ubuntu
自带的
gcc
编译器是针对
X86
架构的!而我们现在 要编译的是 ARM
架构的代码,所以我们需要一个在
X86
架构的
PC
上运行,可以编译
ARM
架 构代码的 GCC
编译器,这个编译器就叫做交叉编译器,总结一下交叉编译器就是:
1
、它肯定是一个
GCC
编译器。
2
、这个
GCC
编译器是运行在
X86
架构的
PC
上的。
3
、这个
GCC
编译器是编译
ARM
架构代码的,也就是编译出来的可执行文件是在
ARM
芯
片上运行的。
交叉编译器中“交叉”的意思就是在一个架构上编译另外一个架构的代码,相当于两种架
构“交叉”起来了。
下面这个例子是使用x86架构的gcc编译器编译后的文件,在arm中执行后的报错
上网搜了很多资料后发现是编译器的问题。后来安装了交叉编译器。
在Ubuntu编译,在arm上运行成功。