[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#866588: ioquake3: FTBFS on kfreebsd-amd64: undefined reference to `_ZGVbN2v_sin'

Package: ioquake3
Version: 1.36+u20170611+dfsg1-1
Severity: wishlist
Tags: help

ioquake3 fails to build from source on kfreebsd-amd64 (but not on either
Linux amd64 or kfreebsd-i386) with the following linker error:

cc -D_REENTRANT -I/usr/include/SDL2 -I/usr/include/x86_64-kfreebsd-gnu -DUSE_OPENAL -DUSE_CURL -DUSE_VOIP -DUSE_CODEC_OPUS -I/usr/include/opus -DUSE_CODEC_VORBIS   -DUSE_RENDERER_DLOPEN -DUSE_MUMBLE -g -O2 -fdebug-prefix-map=/«BUILDDIR»/ioquake3-1.36+u20170611+dfsg1=. -fstack-protector-strong -Wformat -Werror=format-security -fsigned-char -Wdate-time -D_FORTIFY_SOURCE=2 -DWITH_OPENARENA  -Wall -fno-strict-aliasing -Wimplicit -Wstrict-prototypes -pipe -DUSE_ICON -DARCH_STRING=\"x86_64\"   -DDEFAULT_BASEDIR=\"/usr/lib/ioquake3\" -DPRODUCT_DATE=\"Jun\ 15\ 2017\" -DPRODUCT_VERSION=\"1.36+u20170611+dfsg1-1/Debian\" -Wformat=2 -Wno-format-zero-length -Wformat-security -Wno-format-nonliteral -Wstrict-aliasing=2 -Wmissing-format-attribute -Wdisabled-optimization -Werror-implicit-function-declaration -MMD  -Wl,-z,relro -Wl,-z,now  \
	-o debian/build/release-kfreebsd-gnu-x86_64/ioquake3 debian/build/release-kfreebsd-gnu-x86_64/client/cl_cgame.o [... many object files ...] debian/build/release-kfreebsd-gnu-x86_64/client/libmumblelink.o \
	 -lSDL2 -lpthread -lopenal -lcurl -lrt -lopusfile -lopus -lvorbisfile -lvorbis -logg -ldl -lm -lz
debian/build/release-kfreebsd-gnu-x86_64/client/snd_mix.o: In function `S_TransferPaintBuffer':
./code/client/snd_mix.c:171: undefined reference to `_ZGVbN2v_sin'
./code/client/snd_mix.c:171: undefined reference to `_ZGVbN2v_sin'
collect2: error: ld returned 1 exit status
Makefile:2154: recipe for target 'debian/build/release-kfreebsd-gnu-x86_64/ioquake3' failed

The weird function name seems to be something to do with vectorized
SSE implementations of sin(). ioquake3 is explicitly linked to libm,
so I would have expected that it should have access to any available
versions of sin()? ioquake3 is almost a leaf package (it's needed for
openarena), so not really at all important for a ports architecture,
but I am reporting this with X-Debbugs-Cc to the debian-bsd list in case
it's a symptom of a more serious kFreeBSD toolchain or libc problem.

I do not intend to work on this issue myself, but if it turns out to be an
ioquake3 bug, I'd be happy to apply a tested patch or send one upstream.


Reply to: