On 23 September 2018 at 07:31, Michael Tuexen <tuexen_at_fh-muenster.de> wrote: > Using this patch I was able to build/install world and kernel on an i386 system. > However, after removing it, I can't build world then. When trying to compile a > kernel "the old way" I end up with: > > tuexen_at_head:~/head/sys/i386/conf % config -g TCP > WARNING: duplicate option `GEOM_PART_GPT' encountered. > Kernel build directory is ../compile/TCP > Don't forget to do ``make cleandepend && make depend'' > tuexen_at_head:~/head/sys/i386/conf % cd ../compile/TCP/ > tuexen_at_head:~/head/sys/i386/compile/TCP % make -j 6 > make: "../../../conf/../../../conf/kern.pre.mk" line 126: amd64/i386 kernel requires linker ifunc support > > This is r338893. > > amd64 works without any problem. So this is i386 specific. Any idea how to fix it? This safety belt is in place to ensure we don't build a non-functional kernel - now that the i386 kernel requires ifunc support using old GNU ld results in a kernel that doesn't boot. The workaround for the "old way" is to explicitly set LD=ld.lld in the environment - "LD=ld.lld make -j 6" should work. More details in this -arch thread, when amd64 encountered this hiccup: https://lists.freebsd.org/pipermail/freebsd-arch/2018-May/018967.html The same issue now affects i386 as it has started using ifuncs, and will be resolved once we can switch i386's /usr/bin/ld to be lld, which is waiting on ports fixes in PR214864.Received on Mon Sep 24 2018 - 17:10:52 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:18 UTC