Linux Buildroot:仅安装和构建工具链
我只想为我的Buildroot项目安装和构建工具链Linux Buildroot:仅安装和构建工具链,linux,embedded,buildroot,Linux,Embedded,Buildroot,我只想为我的Buildroot项目安装和构建工具链makehelp建议命令maketoolchain应该工作;但是,运行该命令只会返回“toolchain”的无需执行的操作。和输出/主机永远不会创建。您首先必须配置Buildroot,以指示它要生成什么样的工具链。请参阅Buildroot用户手册中的 如果您刚刚下载了Buildroot,则生成工具链的步骤如下: 运行makemenuconfig 在目标选项中选择您的硬件平台和ABI 在工具链中配置所需的工具链类型 出口储蓄 运行make工具链
makehelp
建议命令maketoolchain
应该工作;但是,运行该命令只会返回“toolchain”的无需执行的操作。
和输出/主机
永远不会创建。您首先必须配置Buildroot,以指示它要生成什么样的工具链。请参阅Buildroot用户手册中的
如果您刚刚下载了Buildroot,则生成工具链的步骤如下:
makemenuconfig
- 在
选择您的硬件平台和ABI目标选项中
- 在
配置所需的工具链类型工具链中
- 出口储蓄
make工具链
工具链位于
output/host/
中。最近的一种仅构建工具链的方法(可在Buildroot内部和外部使用)记录在中
虽然Luca的回答中的make toolchain
确实构建了工具链,但它也将其他主机依赖项放入output/host/
,这使得获得干净的工具链比下面的make sdk
稍微困难一些,后者在output/images/
中生成工具链tarball:
6.1.3. 使用Buildroot构建外部工具链
Buildroot内部工具链选项可用于创建外部工具链。以下是构建内部工具链并将其打包以供Buildroot本身(或其他项目)重用的一系列步骤
创建新的Buildroot配置,包括以下详细信息:
- 为您的目标CPU架构选择适当的目标选项
- 在工具链菜单中,为工具链类型保留默认的构建根工具链,并根据需要配置工具链
- 在系统配置菜单中,选择无作为初始化系统,选择无作为/bin/sh
- 在目标软件包菜单中,禁用BusyBox
- 在文件系统映像菜单中,禁用根文件系统的tar
make sdk
这将在$(O)/images
中生成SDK tarball,其名称类似于arm-buildroot-linux-uclibcgnueabi\u SDK-buildroot.tar.gz
。保存这个tarball,因为它现在是可以在其他Buildroot项目中作为外部工具链重用的工具链
Buildroot确实应该在运行配置之前尝试执行“生成工具链”时给出一个错误,因此我已提交供参考,但未修复此问题,现在未配置的Buildroot将在您运行“生成工具链”时打印一个错误,而不是旧的误导性消息。该修复将在下一个Buildroot版本2017.08中发布。(仅供参考,变更正在提交中)