lv2 plugins are overlinked
Linux MIDI arpeggiator, phrase generator and controller LFO
Status: Alpha
Brought to you by:
emuse
Hi! When building 0.6.5 for Arch Linux I also ran our namcap tool on the resulting package.
It appears that the lv2 plugins are overlinked:
qmidiarp W: Unused shared library '/usr/lib/liblo.so.7' by file ('usr/lib/lv2/qmidiarp_arp.lv2/qmidiarp_arp.so') qmidiarp W: Unused shared library '/usr/lib/libpthread.so.0' by file ('usr/lib/lv2/qmidiarp_arp.lv2/qmidiarp_arp.so') qmidiarp W: Unused shared library '/usr/lib/libjack.so.0' by file ('usr/lib/lv2/qmidiarp_arp.lv2/qmidiarp_arp.so') qmidiarp W: Unused shared library '/usr/lib/libasound.so.2' by file ('usr/lib/lv2/qmidiarp_arp.lv2/qmidiarp_arp.so') qmidiarp W: Unused shared library '/usr/lib/libm.so.6' by file ('usr/lib/lv2/qmidiarp_arp.lv2/qmidiarp_arp.so') qmidiarp W: Unused shared library '/usr/lib/liblo.so.7' by file ('usr/lib/lv2/qmidiarp_arp.lv2/qmidiarp_arp_ui.so') qmidiarp W: Unused shared library '/usr/lib/libpthread.so.0' by file ('usr/lib/lv2/qmidiarp_arp.lv2/qmidiarp_arp_ui.so') qmidiarp W: Unused shared library '/usr/lib/libjack.so.0' by file ('usr/lib/lv2/qmidiarp_arp.lv2/qmidiarp_arp_ui.so') qmidiarp W: Unused shared library '/usr/lib/libasound.so.2' by file ('usr/lib/lv2/qmidiarp_arp.lv2/qmidiarp_arp_ui.so') qmidiarp W: Unused shared library '/usr/lib/libm.so.6' by file ('usr/lib/lv2/qmidiarp_arp.lv2/qmidiarp_arp_ui.so') qmidiarp W: Unused shared library '/usr/lib/liblo.so.7' by file ('usr/lib/lv2/qmidiarp_lfo.lv2/qmidiarp_lfo.so') qmidiarp W: Unused shared library '/usr/lib/libpthread.so.0' by file ('usr/lib/lv2/qmidiarp_lfo.lv2/qmidiarp_lfo.so') qmidiarp W: Unused shared library '/usr/lib/libjack.so.0' by file ('usr/lib/lv2/qmidiarp_lfo.lv2/qmidiarp_lfo.so') qmidiarp W: Unused shared library '/usr/lib/libasound.so.2' by file ('usr/lib/lv2/qmidiarp_lfo.lv2/qmidiarp_lfo.so') qmidiarp W: Unused shared library '/usr/lib/liblo.so.7' by file ('usr/lib/lv2/qmidiarp_lfo.lv2/qmidiarp_lfo_ui.so') qmidiarp W: Unused shared library '/usr/lib/libpthread.so.0' by file ('usr/lib/lv2/qmidiarp_lfo.lv2/qmidiarp_lfo_ui.so') qmidiarp W: Unused shared library '/usr/lib/libjack.so.0' by file ('usr/lib/lv2/qmidiarp_lfo.lv2/qmidiarp_lfo_ui.so') qmidiarp W: Unused shared library '/usr/lib/libasound.so.2' by file ('usr/lib/lv2/qmidiarp_lfo.lv2/qmidiarp_lfo_ui.so') qmidiarp W: Unused shared library '/usr/lib/liblo.so.7' by file ('usr/lib/lv2/qmidiarp_seq.lv2/qmidiarp_seq.so') qmidiarp W: Unused shared library '/usr/lib/libpthread.so.0' by file ('usr/lib/lv2/qmidiarp_seq.lv2/qmidiarp_seq.so') qmidiarp W: Unused shared library '/usr/lib/libjack.so.0' by file ('usr/lib/lv2/qmidiarp_seq.lv2/qmidiarp_seq.so') qmidiarp W: Unused shared library '/usr/lib/libasound.so.2' by file ('usr/lib/lv2/qmidiarp_seq.lv2/qmidiarp_seq.so') qmidiarp W: Unused shared library '/usr/lib/libm.so.6' by file ('usr/lib/lv2/qmidiarp_seq.lv2/qmidiarp_seq.so') qmidiarp W: Unused shared library '/usr/lib/liblo.so.7' by file ('usr/lib/lv2/qmidiarp_seq.lv2/qmidiarp_seq_ui.so') qmidiarp W: Unused shared library '/usr/lib/libpthread.so.0' by file ('usr/lib/lv2/qmidiarp_seq.lv2/qmidiarp_seq_ui.so') qmidiarp W: Unused shared library '/usr/lib/libjack.so.0' by file ('usr/lib/lv2/qmidiarp_seq.lv2/qmidiarp_seq_ui.so') qmidiarp W: Unused shared library '/usr/lib/libasound.so.2' by file ('usr/lib/lv2/qmidiarp_seq.lv2/qmidiarp_seq_ui.so') qmidiarp W: Unused shared library '/usr/lib/libm.so.6' by file ('usr/lib/lv2/qmidiarp_seq.lv2/qmidiarp_seq_ui.so')
Hi David,
thanks for this alert, yes indeed they were, and thid part is hopefully fixed on the git repo now
I am now also manipulating the created libtool to prevent overlinking (libtool is incredibly braindead it seems :S).
Hi David,
I'm reopening the issue. Unfortunately this is hard to reproduce outside a packaging system's compilation. When I build on my system and check the .so binaries I don't get unused libraries reported when running ldd -u -r qmidiarp_seq_lv2.so and any of the other .so files produced.
I remember from some past packaging work that this doesn't mean it will be the same on a distro build system, but I wonder (or forgot) what I can do in the corresponding Makefile.am to avoid this (i.e. avoid libtool setting flags by itself?).
Thanks
Frank
Hi David, I think the last git commit (33b9849 ) should force the right flags for avoiding overlinking. I'm sorry I found out only now when the hotfix release is already out.
Best
Frank