嵌入式开发工具链的选择与构建指南
1. 工具链的选择
在进行交叉开发时,有三种工具链选择:
- 寻找现成的预构建工具链。
- 使用嵌入式构建工具生成的工具链。
- 自己创建工具链。
预构建工具链的优点是只需下载和安装,但会受限于其特定配置,且依赖于提供者。常见的预构建工具链来源有:
- SoC 或开发板供应商,多数提供 Linux 工具链。
- 为特定架构提供系统级支持的联盟,如 Linaro 为 ARM 架构提供预构建工具链。
- 第三方 Linux 工具供应商,如 Mentor Graphics、TimeSys 或 MontaVista。
- 桌面 Linux 发行版的交叉工具包,如基于 Debian 的发行版有用于 ARM、MIPS 和 PowerPC 目标的交叉编译包。
- 集成嵌入式构建工具生成的二进制 SDK,如 Yocto Project 有相关示例。
- 论坛上难以再次找到的链接。
在选择预构建工具链时,要考虑是否使用了自己偏好的 C 库,以及提供者是否会提供安全修复和 bug 更新。若答案是否定的,应考虑自己创建工具链。
自己构建工具链并非易事。若想完全自己动手,可参考 Cross Linux From Scratch(http://trac.clfs.org),那里有创建各组件的详细步骤。更简单的替代方案是使用 crosstool - NG,它将过程封装在一组脚本中,有菜单驱动的前端,但仍需一定知识来做出正确选择。使用 Buildroot 或 Yocto Project 等构建系统更简单,它们会在构建过程中生成工具链。
超级会员免费看
订阅专栏 解锁全文
1062

被折叠的 条评论
为什么被折叠?



