我一直在使用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的一个例外,但是该线程已经使用了几年了,我还没有完全尝试理解它。
答案 0 :(得分:1)
gcc
不是一个实际的软件包。它由两个共享某些配置的软件包组成:gcc-initial
和gcc-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)