举个例子来解答。
我们的电脑PC的CPU是intel或者AMD的,这种CPU全部是
x86架构的,内在指令是一样的。
而嵌入式linux的CPU一般是ARM的,这种CPU的指令架构和x86完全不同。
如果,你在电脑上写了个
C语言程序,然后编译运行,但是这种程序只能在PC上,也就是intel或AMD的CPU上运行。你下载到ARM的机器上是不能运行的。
如果想要运行,就要在PC上根据ARM的指令架构来编译程序。
这种在这种架构的CPU机子上编译另外一种架构CPU的软件,就叫做“交叉”编译。交叉CROSS就是这个意思。
http://zhidao.baidu.com/link?url=LAjdlmCaFFCbPFlFWFicJ_Ui0ZaxaQpKeSmFuKzyQM7a9z_DsE7TGe-xy61KUI6UsXa8uk0Vo8I6Z5kypOEmewIDg6nFy1gy-htLuMhDbwe