dyne / frei0r

A large collection of free and portable video plugins
https://frei0r.dyne.org/
GNU General Public License v2.0
427 stars 89 forks source link

Fix libmath linking crashes #3

Closed j-b-m closed 7 years ago

j-b-m commented 7 years ago

I proposed this a long time ago on frei0r mailing list but somehow never ensured it made it to master...

ddennedy commented 7 years ago

Is this in reaction to continued failures because the latest release does not have your libm underlinking commit? In other words, is your Apr 1 commit not good enough, or did you forget that occurred after release, and distro packages are still giving you support grief? Are there really plugins that are still underlinking libm?

ddennedy commented 7 years ago

I think if we do this we should add linker option --as-needed.

j-b-m commented 7 years ago

On September 6, 2016 6:43:00 PM GMT+02:00, Dan Dennedy notifications@github.com wrote:

Is this in reaction to continued failures because the latest release does not have your libm underlinking commit? In other words, is your Apr 1 commit not good enough, or did you forget that occurred after release, and distro packages are still giving you support grief? Are there really plugins that are still underlinking libm?

Well I am a bit tired but didn't forget my april commit. However, for some reason I am sure I had found other plugins that also had the same underlinking issue and that were not included in my april patch. I remember having an exchange with someone from frei0r about that and that I was given an ok but I am unable to find that mail exchange right now - i am not home currently.

Since I heard you planned a release, I thought it would be good to include...

I will be home tomorrow evening and will try to find a trace of the discussion.

Regards

j-b-m commented 7 years ago

On Tuesday, September 6, 2016 6:44:06 PM CEST, Dan Dennedy wrote:

I think if we do this we should add linker option --as-needed.

I can confirm that some plugins still crash because of underlinking on Ubuntu 16.04 with current CMake setup:

melt video.mp4 -attach frei0r.levels crashes with: melt: symbol lookup error: /usr/local/lib/frei0r-1/levels.so: undefined symbol: pow

This is fixed by my proposal. Also, adding an "--as-needed" flag works for me:

set (CMAKE_SHARED_LINKER_FLAGS "-Wl,--as-needed")

For the record, the issue was raised in april on this list:

Crash in levels effect: https://lists.dyne.org/lurker/message/20160404.172311.5230d84e.en.html

Jaromil's answer: https://lists.dyne.org/lurker/message/20160404.224852.3ba18a57.en.html

Regards jb

jaromil commented 7 years ago

thanks jb. Would you like to integrate --as-needed yourself by rebasing this PR or shall we do it?