【问题标题】:How to select an OVERRIDE_SRCDIR custom source code for GCC when building Buildroot?构建 Buildroot 时如何为 GCC 选择 OVERRIDE_SRCDIR 自定义源代码?
【发布时间】:2019-03-05 19:14:41
【问题描述】:

我一直在 Buildroot 2018.05 中使用 BR2_PACKAGE_OVERRIDE_FILE + <pkg>_OVERRIDE_SRCDIR 设置来成功跟踪感兴趣的包,例如 Binutils 和 glibc 作为我的项目的子模块:

BINUTILS_OVERRIDE_SRCDIR = ../../submodules/binutils-gdb
GLIBC_OVERRIDE_SRCDIR = ../../submodules/glibc

但是,当我尝试 GCC 的类似程序时,它似乎没有生效:

GCC_OVERRIDE_SRCDIR = ../../submodules/gcc

例如,在构建文件夹中的build/ 下,我得到的是通常的:

host-gcc-final-7.3.0
host-gcc-initial-7.3.0

而不是预期的-custom 版本。

有办法实现吗?

也许http://buildroot-busybox.2317881.n4.nabble.com/Internal-toolchain-wrapper-ccache-fixes-tp113064p113187.html 暗示由于技术原因它只是GCC 的一个例外,但该线程现在已经有几年历史了,我还没有完全尝试理解它。

【问题讨论】:

    标签: buildroot


    【解决方案1】:

    gcc 不是一个实际的包。它由两个共享一些配置的包组成:gcc-initialgcc-final。因此,您必须设置

    GCC_INITIAL_OVERRIDE_SRCDIR = ../../submodules/gcc
    GCC_FINAL_OVERRIDE_SRCDIR = ../../submodules/gcc
    

    或者,以与树内包相同的方式将其分解:

    GCC_OVERRIDE_SRCDIR = ../../submodules/gcc
    GCC_INITIAL_OVERRIDE_SRCDIR = $(GCC_OVERRIDE_SRCDIR)
    GCC_FINAL_OVERRIDE_SRCDIR = $(GCC_OVERRIDE_SRCDIR)
    

    【讨论】:

    • 啊,谢谢阿诺特!我应该试过的。它会很漂亮。现在唯一缺少的东西是不需要从树中构建 SRCDIR 而不是丑陋的 rsync。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-13
    • 2012-02-09
    • 1970-01-01
    • 1970-01-01
    • 2017-07-08
    • 1970-01-01
    相关资源
    最近更新 更多