On Sun, Oct 06, 2024 at 02:31:48PM +0200, Chris Hofstaedtler wrote: > On Sun, Aug 11, 2024 at 01:35:34PM +0200, Florian Ernst wrote: > > With the attached minimized patch this tuxpaint version compiles again > > with gcc-14. It seems this was first fixed upstream in 0.9.29, cf. > > <https://sourceforge.net/p/tuxpaint/tuxpaint/ci/9d70b5837cc307e6c9fe80e6e7dcabf7750b1d45/>. > > [...] > > I tried applying this, but then later linking fails (at least on arm64): > [...]
Thanks for checking! Well, while this worked for me in August I now get a similar error on amd64: | ...Linking Tux Paint... | cc -Wdate-time -D_FORTIFY_SOURCE=2 -O0 -g -W -Wall -fno-common -ffloat-store -fvisibility=hidden -Wcast-align -Wredundant-decls -Wbad-function-cast -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wstrict-aliasing=2 -g -I/usr/include/SDL2 -D_REENTRANT -I/usr/include/fribidi -DVER_DATE=\"2024-10-06\" -DVER_VERSION=\"0.9.28\" -DDATA_PREFIX=\"/usr/share/tuxpaint/\" -DDOC_PREFIX=\"/usr/share/doc/tuxpaint-0.9.28/\" -DLOCALEDIR=\"/usr/share/locale/\" -DIMDIR=\"/usr/share/tuxpaint/im/\" -DCONFDIR=\"/etc/tuxpaint/\" -DMAGIC_PREFIX=\"/usr/lib/tuxpaint/plugins/\" -DNO_SDLPANGO \ | -o tuxpaint obj/tuxpaint.o obj/i18n.o obj/im.o obj/cursor.o obj/pixels.o obj/rgblinear.o obj/playsound.o obj/fonts.o obj/parse.o obj/fill.o obj/progressbar.o obj/dirwalk.o obj/get_fname.o obj/onscreen_keyboard.o obj/gifenc.o obj/sounds.o obj/postscript_print.o \ | -lSDL2 -lSDL2_image -lSDL2 -lSDL2_ttf -lSDL2 -lSDL2_gfx -lSDL2 -lz -lpng16 -lSDL2_mixer -lSDL2 -L/usr/lib/x86_64-linux-gnu/pkgconfig/../../../lib/x86_64-linux-gnu -lrsvg-2 -lcairo-gobject -lpng16 -ldav1d -lgdk_pixbuf-2.0 -lgio-2.0 -lxml2 -lpangocairo-1.0 -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lharfbuzz -lfontconfig -lfreetype -Wl,--export-dynamic -lgmodule-2.0 -pthread -lglib-2.0 -lglib-2.0 -lcairo -lpaper -lfribidi -limagequant | /usr/bin/ld: obj/tuxpaint.o: undefined reference to symbol 'round@@GLIBC_2.2.5' | /usr/bin/ld: /lib/x86_64-linux-gnu/libm.so.6: error adding symbols: DSO missing from command line | collect2: error: ld returned 1 exit status And indeed, in my previous attempt that linking still included "-lm" which now is missing, explaining the error. Here the corresponding lines from that attempt: | ...Linking Tux Paint... | cc -Wdate-time -D_FORTIFY_SOURCE=2 -O0 -g -W -Wall -fno-common -ffloat-store -fvisibility=hidden -Wcast-align -Wredundant-decls -Wbad-function-cast -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wstrict-aliasing=2 -g -I/usr/include/SDL2 -D_REENTRANT -I/usr/include/fribidi -DVER_DATE=\"2024-08-11\" -DVER_VERSION=\"0.9.28\" -DDATA_PREFIX=\"/usr/share/tuxpaint/\" -DDOC_PREFIX=\"/usr/share/doc/tuxpaint-0.9.28/\" -DLOCALEDIR=\"/usr/share/locale/\" -DIMDIR=\"/usr/share/tuxpaint/im/\" -DCONFDIR=\"/etc/tuxpaint/\" -DMAGIC_PREFIX=\"/usr/lib/tuxpaint/plugins/\" -DNO_SDLPANGO \ | -o tuxpaint obj/tuxpaint.o obj/i18n.o obj/im.o obj/cursor.o obj/pixels.o obj/rgblinear.o obj/playsound.o obj/fonts.o obj/parse.o obj/fill.o obj/progressbar.o obj/dirwalk.o obj/get_fname.o obj/onscreen_keyboard.o obj/gifenc.o obj/sounds.o obj/postscript_print.o \ | -lSDL2 -lSDL2_image -lSDL2 -lSDL2_ttf -lSDL2 -lSDL2_gfx -lSDL2 -lz -lpng16 -lSDL2_mixer -lSDL2 -lrsvg-2 -lm -lgio-2.0 -lgdk_pixbuf-2.0 -lgobject-2.0 -lglib-2.0 -lcairo -lpaper -lfribidi -limagequant | | -------------------------------------------------------------- | | Done compiling. So, not only is "-lm" missing, but now there is a bunch of additional libraries (Gnome?) present that wasn't there before, for whatever reason. Hmmmm. Cheers, Flo
signature.asc
Description: PGP signature