r349100: buildworld does not compile (ld: error: duplicate symbol: sse42_crc32c)

Rainer Hurling rhurlin at gwdg.de
Sun Jun 16 17:44:45 UTC 2019


Am 16.06.19 um 18:33 schrieb Warner Losh:
> 
> 
> On Sun, Jun 16, 2019, 9:51 AM Rainer Hurling <rhurlin at gwdg.de
> <mailto:rhurlin at gwdg.de>> wrote:
> 
>     If I try to build world almost recent sources (r349100) on HEAD amd64
>     (r348775), it stops with the following error:
> 
> 
>     [..snip..]
>     (cd /usr/src/tests/sys/kern &&  DEPENDFILE=.depend.libkern_crc32
>     NO_SUBDIR=1 make -f /usr/src/tests/sys/kern/Makefile _RECURSING_PROGS=t
>     PROG=libkern_crc32 )
>     echo libkern_crc32: /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/libc.a
>     /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/libprivateatf-c.a >>
>     .depend.libkern_crc32
>     cc -target x86_64-unknown-freebsd13.0
>     --sysroot=/usr/obj/usr/src/amd64.amd64/tmp
>     -B/usr/obj/usr/src/amd64.amd64/tmp/usr/bin  -O2 -pipe
>     -DUSERSPACE_TESTING -MD  -MF.depend.libkern_crc32.libkern_crc32.o
>     -MTlibkern_crc32.o -std=gnu99 -fstack-protector-strong -Wsystem-headers
>     -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter
>     -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith
>     -Wno-uninitialized -Wno-pointer-sign -Wno-empty-body
>     -Wno-string-plus-int -Wno-unused-const-variable
>     -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality
>     -Wno-unused-function -Wno-enum-conversion -Wno-unused-local-typedef
>     -Wno-address-of-packed-member   -Qunused-arguments   -c
>     /usr/src/tests/sys/kern/libkern_crc32.c -o libkern_crc32.o
>     cc -target x86_64-unknown-freebsd13.0
>     --sysroot=/usr/obj/usr/src/amd64.amd64/tmp
>     -B/usr/obj/usr/src/amd64.amd64/tmp/usr/bin -O2 -pipe -DUSERSPACE_TESTING
>     -std=gnu99 -fstack-protector-strong -Wsystem-headers -Werror -Wall
>     -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes
>     -Wmissing-prototypes -Wpointer-arith -Wno-uninitialized
>     -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int
>     -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value
>     -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion
>     -Wno-unused-local-typedef -Wno-address-of-packed-member
>     -Qunused-arguments -DUSERSPACE_TESTING    -o libkern_crc32
>     libkern_crc32.o  /usr/src/sys/libkern/x86/crc32_sse42.c -lprivateatf-c
>     /usr/src/sys/libkern/x86/crc32_sse42.c -lprivateatf-c
>     ld: error: duplicate symbol: sse42_crc32c
>     >>> defined at crc32_sse42.c
>     >>>            /tmp/crc32_sse42-2988bd.o:(sse42_crc32c)
>     >>> defined at crc32_sse42.c
>     >>>            /tmp/crc32_sse42-bcf3d2.o:(.text+0x3C0)
>     cc: error: linker command failed with exit code 1 (use -v to see
>     invocation)
>     *** [libkern_crc32] Error code 1
>     make[6]: stopped in /usr/src/tests/sys/kern
>     1 error
>     make[6]: stopped in /usr/src/tests/sys/kern
>     *** [libkern_crc32] Error code 2
> 
> 
>     This happens with two older cpus, Intel (Core 17-4770) and AMD (Phenom
>     II X6 1090T).
> 
>     Am I the only one, who observes this breakage? Thanks for any hint.
> 
> 
> Try adding -DWITHOUT_TESTS to buildworld...
> 
> Warner
> 
> 
>     Regards,
>     Rainer Hurling



Many thanks Warner,

With -DWITHOUT_TESTS buildworld was able to finish. Is it secure to also
install it now?

BTW, in Poudriere, the same breakage seems to happen.

Regards,
Rainer


More information about the freebsd-current mailing list