在嵌入式开发过程中,设备的存储空间和运算能力通常会比较低,这时候,比如要编译一个linux的内核,嵌入式设备就不能胜任了,所以,实现交叉编译还是很必要的。通过交叉编译,我们就能够在我们的pc上编译出能够在嵌入式设备上使用的可执行程序。
下面,我将一步步讲解如何在MAC OS上实现树莓派(arm)的交叉编译。
一。新建一个磁盘映像
MAC OS的文件系统默认是大小写不敏感的,而交叉编译工具链是基于大小写敏感的文件系统的,所以我们不能直接把工具链安装在原来的文件系统中,而是需要新建一个大小写敏感的磁盘印象用于安装工具链。
实现这一功能并不难,使用系统自带的磁盘工具(disk utility
)就可以实现了。打开磁盘工具,然后 文件>新建>空白磁盘映像,然后在弹出窗口中设置名称为arm-x(便于后续操作),大小至少为500M,格式为Mac OS扩展(区分大小写,日志式)的映像(如下图)。
二。下载已经编译完的工具链
从下面的链接下载已经编译完的arm GNU Linux 工具链:
如果你想自己一步步编译,了解工具链中的具体元素的话,可以看一下下面这篇文档:
三。解压工具链压缩包到磁盘映像
在终端进入压缩包所在的目录,执行下面的指令即可: