所谓交叉编译可以理解为在一类机器上编写(源代码)、编译得到可执行程序(通常是PC机),在另一类机器上运行(比如arm设备),这是嵌入式和非嵌入式的一个很大的区别。之所以用交叉编译,是因为
(1)嵌入式开发的CPU比较简单,本身无法搭建开发环境,有些甚至操作系统都没有。
(2)交叉编译可以用高性能机器为低性能机器开发软件(包括裸机软件、系统级和应用级软件)。
由于可执行程序不能本地运行调试,因此必须配合一定手段(专用调试器、JTAG调试器、USB下载、串口下载、SD启动、网络共享等)将可执行程序加载到目标嵌入式设备上运行及调试。 |