首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Buildroot中使用外部工具链时生成错误

在Buildroot中使用外部工具链时生成错误
EN

Stack Overflow用户
提问于 2022-02-01 19:35:08
回答 1查看 1.1K关注 0票数 0

我试图在Buildroot中使用externel工具链选项,并使用gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar.gz作为外部工具链。我正在遵循Buildroot手册第6.1.3节中提到的步骤。我已经有了工具链tarball,所以我没有做make sdk部分。在menuconfig中,我指定如下所示:

  1. 将工具链类型设置为外部工具链
  2. 将工具链设置为自定义工具链
  3. 将工具链原点设置为要下载和安装的工具链
  4. 将工具链URL设置为file:///path/to/your/sdk/tarball.tar.gz :在我的示例中,我已将其设置为file:////root/br-tcg4/tmp/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar.gz

然后,当我执行make时,我得到以下错误:

代码语言:javascript
复制
.
.
.
Unpacking toolchain to "/root/br-tcg4/bat/buildscripts/../../tmp/toolchain" ...
done

Current STW RootFs version: "STW-V4.00r1"
Have you updated the version? Do you want to continue? [Y/n] Y
Make rfs ...
make: Entering directory '/root/br-tcg4/libs/br_pjt'
Makefile:1051: warning: overriding recipe for target '/root/br-tcg4/libs/br_pjt/output/staging'
Makefile:475: warning: ignoring old recipe for target '/root/br-tcg4/libs/br_pjt/output/staging'
/usr/bin/make -j1 O=/root/br-tcg4/libs/br_pjt/output HOSTCC="/usr/bin/gcc" HOSTCXX="/usr/bin/g++" syncconfig
make[1]: Entering directory '/root/br-tcg4/libs/br_pjt'
make[1]: Leaving directory '/root/br-tcg4/libs/br_pjt'
tar-1.29.cpio.gz: OK (sha256: 9173f222464dd3676118408840da5990527062b5c7daf6487bed7c396c45bfb1)
>>> toolchain-external-custom  Downloading
cp: cannot stat '/root/br-tcg4/tmp/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar.gz': No such file or directory
--2022-02-01 20:02:13--  http://sources.buildroot.net/toolchain-external-custom/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar.gz
Resolving sources.buildroot.net (sources.buildroot.net)... 172.67.72.56, 104.26.1.37, 104.26.0.37, ...
Connecting to sources.buildroot.net (sources.buildroot.net)|172.67.72.56|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2022-02-01 20:02:14 ERROR 404: Not Found.

--2022-02-01 20:02:14--  http://sources.buildroot.net/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar.gz
Resolving sources.buildroot.net (sources.buildroot.net)... 172.67.72.56, 104.26.1.37, 104.26.0.37, ...
Connecting to sources.buildroot.net (sources.buildroot.net)|172.67.72.56|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2022-02-01 20:02:14 ERROR 404: Not Found.

make: *** [package/pkg-generic.mk:171: /root/br-tcg4/libs/br_pjt/output/build/toolchain-external-custom/.stamp_downloaded] Error 1
make: Leaving directory '/root/br-tcg4/libs/br_pjt'

------------- Error occured! -------------

当我检查http://sources.buildroot.net/toolchain-external-custom时,没有文件gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar.gz

请让我知道如何在Buildroot中正确使用外部工具链选项好吗?

你的帮助将不胜感激。

提前感谢

P.S:我使用Buildroot 2020.02.12和Ubuntu20.04作为构建系统。如果这里缺少任何信息,请告诉我。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-02 04:52:25

既然您似乎已经下载了自定义工具链tarball,那么为什么不简单地手动安装(即不存档)自定义工具链,然后选择适当的Buildroot选项(即Pre-installed toolchain)?

例如,我在/opt/安装工具链,在/opt/ Linaro /下安装linaro工具链。您使用的工具链安装在我的开发PC上,如下所示:

代码语言:javascript
复制
$ ls -go /opt/linaro/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf
total 36
drwxr-xr-x 6  4096 Dec  4  2019 arm-linux-gnueabihf
drwxr-xr-x 2  4096 Dec  4  2019 bin
-rw-r--r-- 1 11337 Dec  4  2019 gcc-linaro-7.5.0-2019.12-linux-manifest.txt
drwxr-xr-x 3  4096 Dec  4  2019 include
drwxr-xr-x 3  4096 Dec  4  2019 lib
drwxr-xr-x 3  4096 Dec  4  2019 libexec
drwxr-xr-x 8  4096 Dec  4  2019 share
$

Buildroot将简单地使用指向预装可执行文件的符号链接来提高存储效率。因此,当您有几个使用相同外部工具链的Buildroot项目目录时,每个预装工具链可执行文件只有一个副本。然而,如果您(下载&)安装外部工具链,那么每个Buildroot项目目录都会有自己的可执行文件副本。

请让我知道如何在Buildroot中正确使用外部工具链选项好吗?

以下是为/opt/linaro/...预装的Linaro工具链设置的,该工具链对我可靠地工作:

代码语言:javascript
复制
    Toolchain type (External toolchain)  --->
    *** Toolchain External Options ***
    Toolchain (Custom toolchain)  --->
    Toolchain origin (Pre-installed toolchain)  --->
(/opt/linaro/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/) Toolchain path 
(arm-linux-gnueabihf) Toolchain prefix
    External toolchain gcc version (7.x)  --->
    External toolchain kernel headers series (4.10.x)  --->
    External toolchain C library (glibc/eglibc)  --->
[*] Toolchain has SSP support?
[*]   Toolchain has SSP strong support?
[*] Toolchain has RPC support?
[*] Toolchain has C++ support?
[ ] Toolchain has D support?
[ ] Toolchain has Fortran support?
[ ] Toolchain has OpenMP support?
[ ] Copy gdb server to the Target
    *** Host GDB Options ***
...
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70946497

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档