构建Buildroot时,如何为GCC选择OVERRIDE_SRCDIR自定义源代码?

时间:2019-03-04 23:04:58

标签: buildroot

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

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的一个例外,但是该线程已经使用了几年了,我还没有完全尝试理解它。

1 个答案:

答案 0 :(得分: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)