game-stop / veejay

Veejay is a visual instrument and realtime video sampler (for live video improvisation)
http://veejayhq.net
82 stars 12 forks source link

Latest master builds fail on debian stable #269

Open dromer opened 3 years ago

dromer commented 3 years ago

With the typical build instructions from http://veejayhq.github.io/installing/

libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/local/include -DG_LOG_DOMAIN=\"veejay\" -DVEEJAY_VERSION=\"1.5.66\" -I /usr/X11R6/include -I../thirdparty -I../libvje -I../libplugger -I../libel -I../libstream -I../libsubsample -I../libsamplerec -I../libqrwrap -I../libvjxml -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/libxml2 -D_REENTRANT -I/usr/include/SDL2 -I/usr/include/x86_64-linux-gnu -I/usr/local/include -march=znver1 -O3 -ffast-math -ftree-vectorize -m64 -fPIC -DPIC -march=znver1 -m64 -fPIC -DPIC -fopenmp -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -Wall -Wunused -fno-stack-protector -MT vj-event.lo -MD -MP -MF .deps/vj-event.Tpo -c vj-event.c -o vj-event.o >/dev/null 2>&1
/bin/bash ../libtool  --tag=CC   --mode=link gcc -march=znver1 -O3 -ffast-math -ftree-vectorize -m64 -fPIC -DPIC -march=znver1  -m64 -fPIC -DPIC -fopenmp -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -Wall -Wunused  -fno-stack-protector -version-info 1:5:1 -release 1.5 -no-undefined -export-dynamic  -lSDL2  -lSM -lICE  -lX11 -lpthread   -lxml2 -ljpeg -llo -lpthread -lunwind -lglib-2.0 -lfreetype -lavformat -lavcodec -lavutil -lswscale -lXext -lX11 -lXinerama   -lm -lgdk_pixbuf-2.0 -lgobject-2.0 -lglib-2.0 -ljack  -lrt -lqrencode -L/usr/local/lib -lveejaycore -DDYNAMIC -O3 -Wall -rdynamic -Wl,-no-undefined  -o libveejay.la -rpath /usr/local/lib jpegutils.lo vj-misc.lo vj-osc.lo vjkf.lo vj-macro.lo vj-event.lo vj-eventman.lo vj-perform.lo x11misc.lo vj-shm.lo vj-sdl.lo vj-dfb.lo vj-viewport.lo vj-composite.lo vj-font.lo vj-pjack.lo vj-share.lo vj-split.lo liblavplayvj.lo ../thirdparty/bio2jack/libbio2jack4vj.la ../thirdparty/libOSC/libOSC.la ../thirdparty/libresample/libresample.la ../libvje/libvje.la ../libplugger/libvjplug.la ../libsample/libsample.la ../libel/libel.la ../libstream/libstream.la ../libsubsample/libsubsample.la ../libsamplerec/libsamplerec.la ../libqrwrap/libqrwrap.la ../libvjxml/libvjxml.la  -ljack -ldl 
libtool: link: gcc -shared  -fPIC -DPIC  .libs/jpegutils.o .libs/vj-misc.o .libs/vj-osc.o .libs/vjkf.o .libs/vj-macro.o .libs/vj-event.o .libs/vj-eventman.o .libs/vj-perform.o .libs/x11misc.o .libs/vj-shm.o .libs/vj-sdl.o .libs/vj-dfb.o .libs/vj-viewport.o .libs/vj-composite.o .libs/vj-font.o .libs/vj-pjack.o .libs/vj-share.o .libs/vj-split.o .libs/liblavplayvj.o  -Wl,--whole-archive ../thirdparty/bio2jack/.libs/libbio2jack4vj.a ../thirdparty/libOSC/.libs/libOSC.a ../thirdparty/libresample/.libs/libresample.a ../libvje/.libs/libvje.a ../libplugger/.libs/libvjplug.a ../libsample/.libs/libsample.a ../libel/.libs/libel.a ../libstream/.libs/libstream.a ../libsubsample/.libs/libsubsample.a ../libsamplerec/.libs/libsamplerec.a ../libqrwrap/.libs/libqrwrap.a ../libvjxml/.libs/libvjxml.a -Wl,--no-whole-archive  -lSDL2 -lSM -lICE -lxml2 /usr/local/lib/libjpeg.so -llo -lunwind -lfreetype -lavformat -lavcodec -lavutil -lswscale -lXext -lX11 -lXinerama -lm -lgdk_pixbuf-2.0 -lgobject-2.0 -lglib-2.0 -lrt -lqrencode -L/usr/local/lib /usr/local/lib/libveejaycore.so -lpthread -ljack -ldl  -march=znver1 -O3 -m64 -march=znver1 -m64 -fopenmp -O3 -Wl,-no-undefined   -fopenmp -Wl,-soname -Wl,libveejay-1.5.so.0 -o .libs/libveejay-1.5.so.0.1.5
/usr/bin/ld: ../libqrwrap/.libs/libqrwrap.a(qrwrap.o): in function `qrwrap_writePNG.isra.0':
qrwrap.c:(.text+0x77): undefined reference to `png_create_write_struct'
/usr/bin/ld: qrwrap.c:(.text+0x8d): undefined reference to `png_create_info_struct'
/usr/bin/ld: qrwrap.c:(.text+0xb1): undefined reference to `png_set_longjmp_fn'
/usr/bin/ld: qrwrap.c:(.text+0xd5): undefined reference to `png_init_io'
/usr/bin/ld: qrwrap.c:(.text+0x103): undefined reference to `png_set_IHDR'
/usr/bin/ld: qrwrap.c:(.text+0x116): undefined reference to `png_write_info'
/usr/bin/ld: qrwrap.c:(.text+0x639): undefined reference to `png_write_row'
/usr/bin/ld: qrwrap.c:(.text+0x673): undefined reference to `png_write_end'
/usr/bin/ld: qrwrap.c:(.text+0x682): undefined reference to `png_destroy_write_struct'
/usr/bin/ld: qrwrap.c:(.text+0x6c9): undefined reference to `png_destroy_write_struct'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:631: libveejay.la] Error 1
make[2]: Leaving directory '/home/dreamer/Sources/_downloads/veejay/veejay-current/veejay-server/veejay'
make[1]: *** [Makefile:590: all-recursive] Error 1
make[1]: Leaving directory '/home/dreamer/Sources/_downloads/veejay/veejay-current/veejay-server'
make: *** [Makefile:499: all] Error 2
dromer commented 3 years ago

Is the libpng in debian buster outdated or too new for veejay?

gui-lux commented 1 year ago

Old thread, but uninstall qrencode and related is a workaround.

game-stop commented 1 year ago

It's possible this is due to outdated libpng as it doesn't find a reference to png_create_write_struct. Perhaps, it picked up the wrong include file. I'll look into this as well.