Menu

#35 lv2 plugins are overlinked

0.6.6
accepted
Frank
None
5
2023-04-12
2021-02-04
David Runge
No

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')

Discussion

  • Frank

    Frank - 2021-02-05
    • status: unread --> open-fixed
    • assigned_to: Frank
     
  • Frank

    Frank - 2021-02-05

    Hi David,
    thanks for this alert, yes indeed they were, and thid part is hopefully fixed on the git repo now

     
  • David Runge

    David Runge - 2023-04-09

    I am now also manipulating the created libtool to prevent overlinking (libtool is incredibly braindead it seems :S).

    sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
    
     
  • Frank

    Frank - 2023-04-09
    • status: open-fixed --> accepted
     
  • Frank

    Frank - 2023-04-09

    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

     
  • Frank

    Frank - 2023-04-12

    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

     

Log in to post a comment.