Buildroot:仅安装和构建工具链

时间:2017-06-13 12:10:46

标签: linux embedded buildroot

我想为Buildroot项目安装和构建工具链。 <script> window.dojoConfig = { parseOnLoad: false, async: true }; </script> <script src="//ajax.googleapis.com/ajax/libs/dojo/1.12.1/dojo/dojo.js"></script>表明命令make help应该有效;但是,运行该命令只会返回make <options> toolchain并且永远不会创建Nothing to be done for 'toolchain'.

2 个答案:

答案 0 :(得分:5)

首先必须配置Buildroot,以指示它要生成哪些工具链。请参阅Buildroot用户手册中的Buildroot quick start

如果您刚刚下载了Buildroot,那么生成工具链的步骤是:

  1. 运行make menuconfig
    • Target options中选择您的硬件平台和ABI
    • Toolchain中配置您想要的工具链类型
    • 退出保存
  2. 运行make toolchain
  3. 工具链位于output/host/

答案 1 :(得分:1)

一种更新的仅构建工具链的方法,可在 Buildroot 内部和外部使用,记录在 Buildroot manual 中。

虽然 Luca 的回答中的 make toolchain 确实构建了工具链,但它也将其他主机依赖项放入 output/host/,与下面的 make sdk 相比,获得干净的工具链稍微困难一些,在 output/images/:

中生成工具链 tarball <块引用>

6.1.3。使用 Buildroot 构建外部工具链

Buildroot 内部工具链选项可用于创建外部工具链。以下是构建内部工具链并将其打包以供 Buildroot 本身(或其他项目)重用的一系列步骤。

创建一个新的 Buildroot 配置,包含以下详细信息:

  • 为您的目标 CPU 架构选择合适的目标选项
  • 工具链菜单中,为工具链类型保留默认的Buildroot工具链,并根据需要配置您的工具链
  • 系统配置菜单中,选择作为初始化系统作为/ bin/sh
  • 目标包菜单中,禁用BusyBox
  • 文件系统图像菜单中,禁用tar根文件系统

然后,我们可以触发构建,也可以让 Buildroot 生成一个 SDK。这将方便地为我们生成一个包含我们工具链的 tarball:

make sdk

这会在 $(O)/images 中生成 SDK tarball,其名称类似于 arm-buildroot-linux-uclibcgnueabi_sdk-buildroot.tar.gz。保存此 tarball,因为它现在是您可以在其他 Buildroot 项目中作为外部工具链重复使用的工具链。