On Monday, April 4, 2016 11:25:08 AM CEST, Izak van Langevelde wrote:
> I got an update today, with fresh bugs:
>
> /usr/bin/melt: symbol lookup error:
> /usr/lib/frei0r-1/levels.so: undefined symbol: floor
> I believe this needs a little more attention.
Hi,
yes, looks like I was a bit too fast on this one. I had a closer look, and
90% of frei0r plugins seem to use libmath. We have 2 options here:
1) easy solution: add libmath linking to the top CmakeLists.txt with this
patch. Should solve the crashes, but causes some unwanted linking.
2) Parse each subdirectory to edit CMakeLists.txt and add the line
link_libraries(m)
where needed. At first it seems easy, but in fact not so much if we want to
do it properly. Some plugins have the "math.h" include but don't use it, so
the proper fix would be to remove the include (for example cairogradient).
And to make things more complicated, some math functions work without
additionnal linking - seems to be compiler dependant from what I read, for
example cluster.c uses "sqrtf" but works without libmath linking, while
levels.c crashes on "floor" if linking is missing.
So I would like to hear frei0r's authors opinion on the matter before going
further into this.
Either way, I can spend some time on this once we decide what to do because
I would really love a 1.5.1 release with those fixes for our next Kdenlive
release on the 20th of april.