Re: [LAD] ladspa: dlopen failed for tap ladspa plugins

From: Cedric Roux <sed@email-addr-hidden>
Date: Sun May 18 2014 - 13:57:53 EEST

because they are compiled with -lm
try to build the test program with:
gcc -o bug bug.c -ldl -lm

but this is really strange that the tap .so files
are not linked against the libm.

On 05/18/2014 12:57 PM, Zlobin Nikita wrote:
> Yet, on gentoo all right. So, problem seems to be invalid.
> But strange, how other hosts can load these ladspa, if loading requires
> dlopen() too %/.
>
>> This. Is. Weird.
>>
>> Did you compile the tap plugins yourself?
>> If yes: what version do you have? how did you compile it?
>> If no: what linux distribution do you use?
>>
>> On 05/18/2014 12:42 PM, Zlobin Nikita wrote:
>>> No dependency on libm.
>>> $ ldd /usr/lib/ladspa/tap_echo.so
>>>
>>> linux-vdso.so.1 => (0x00007fff9dffe000)
>>> libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f9472f16000)
>>> /lib64/ld-linux-x86-64.so.2 (0x00007f9473523000)
>>>>
>>>> Okay, seems there is a problem with the libm
>>>> (math library).
>>>>
>>>> Type that and send me the result:
>>>> ldd /usr/lib/ladspa/tap_echo.so
>>>>
>>>> If there is a line like:
>>>> libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6
>>>> (0x00007f9d59562000)
>>>>
>>>> type:
>>>> readelf -a /lib/x86_64-linux-gnu/libm.so.6 | grep powf
>>>>
>>>> and send me the result too.
>>>>
>>>> If there is no "libm" line, then there is indeed a problem
>>>> and we'll try new things.
>>>>
>>>> How did you install /usr/lib/ladspa/tap_echo.so?
>>>> Did you compile yourself?
>>>>
>>>> Please, answer all my questions so I can help you correctly.
>>>>
>>>> On 05/18/2014 12:17 PM, Zlobin Nikita wrote:
>>>>> Sorry, i did not know about dlerror().
>>>>> Output:
>>>>> dlopen failed: /usr/lib/ladspa/tap_echo.so (dlerror:
>>>>> /usr/lib/ladspa/tap_echo.so: undefined symbol: __powf_finite)
>>>>> dlerror? (null)
>>>>>
>>>>>> In my code I call dlerror to print the error.
>>>>>> What is printed?
>>>>>> And can you send me the strace log so I have a look
>>>>>> at what's going on?
>>>>>>
>>>>>> On 05/18/2014 11:15 AM, Zlobin Nikita wrote:
>>>>>>> I don't see any changes. In my code following check fails:
>>>>>>> if (pvPluginHandle)
>>>>>>> Shortly - dlopen returns NULL, so futher struggle is useless.
>>>>>>>
>>>>>>>> try that:
>>>>>>>>
>>>>>>>> #include <stdio.h>
>>>>>>>> #include <dlfcn.h>
>>>>>>>> int main (int argc, char ** argv)
>>>>>>>> {
>>>>>>>>
>>>>>>>> //LADSPAPluginSearch(describePluginLibrary);
>>>>>>>> char plugpath [] = "/usr/lib/ladspa/tap_echo.so";
>>>>>>>> void * pvPluginHandle = dlopen(plugpath, RTLD_NOW | RTLD_LOCAL);
>>>>>>>> if (pvPluginHandle) dlclose (pvPluginHandle);
>>>>>>>> else printf ("dlopen failed: %s (dlerror: %s)\n",
>>>>>>>>
>>>>>>>> plugpath, dlerror());
>>>>>>>>
>>>>>>>> printf("dlerror? %s\n", dlerror());
>>>>>>>>
>>>>>>>> return 0;
>>>>>>>>
>>>>>>>> }
>>>>>>>>
>>>>>>>> compile with:
>>>>>>>> gcc -Wall bug.c -ldl -o bug
>>>>>>>>
>>>>>>>> then run:
>>>>>>>> ./bug
>>>>>>>>
>>>>>>>> what happens?
>>>>>>>> If it fails, can you run:
>>>>>>>> strace ./bug 2>&1 > strace.log
>>>>>>>> and send me the strace.log file.
>>>>>>>>
>>>>>>>> and also tell me what "gcc --version" says,
>>>>>>>> and what "uname -a" says.
>>>>>>>>
>>>>>>>> Thanks.
>>>>>>>>
>>>>>>>> On 05/18/2014 07:07 AM, Zlobin Nikita wrote:
>>>>>>>>> Fons: i tried with existing path.
>>>>>>>>> Library path is valid - i checked it with ls (doing it for ladspa
>>>>>>>>> dir
>>>>>>>>> before to get libraries list).
>>>>>>>>>
>>>>>>>>> Code - includes are omited, line with main() declaration is numbered
>>>>>>>>>
>>>>>>>>> 30: int main (int argc, char ** argv)
>>>>>>>>> {
>>>>>>>>>
>>>>>>>>> //LADSPAPluginSearch(describePluginLibrary);
>>>>>>>>> char plugpath [] = "/usr/lib/ladspa/tap_echo.so";
>>>>>>>>> void * pvPluginHandle = dlopen(plugpath, RTLD_NOW | RTLD_LOCAL);
>>>>>>>>> if (pvPluginHandle) dlclose (pvPluginHandle);
>>>>>>>>> else printf ("dlopen failed: %s\n", plugpath);
>>>>>>>>> return 0;
>>>>>>>>>
>>>>>>>>> }
>>>>>>>>>
>>>>>>>>> hermann: thanks, will look
>>>>>>>>>
>>>>>>>>>> On 05/17/2014 10:15 PM, Zlobin Nikita wrote:
>>>>>>>>>>> Backtrace of scanning crash (gdb output) is in attachement (too
>>>>>>>>>>> long
>>>>>>>>>>> lines
>>>>>>>>>>> in email message are automatically wrapped - don't know, is it
>>>>>>>>>>> good
>>>>>>>>>>> to
>>>>>>>>>>> violate this).
>>>>>>>>>>
>>>>>>>>>> You should provide some code, it's hard to help you without seeing
>>>>>>>>>> what
>>>>>>>>>> your program really does.
>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> Linux-audio-dev mailing list
>>>>>>>>> Linux-audio-dev@email-addr-hidden
>>>>>>>>> http://lists.linuxaudio.org/listinfo/linux-audio-dev
>>>
>>> _______________________________________________
>>> Linux-audio-dev mailing list
>>> Linux-audio-dev@email-addr-hidden
>>> http://lists.linuxaudio.org/listinfo/linux-audio-dev
>
> _______________________________________________
> Linux-audio-dev mailing list
> Linux-audio-dev@email-addr-hidden
> http://lists.linuxaudio.org/listinfo/linux-audio-dev
>

_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@email-addr-hidden
http://lists.linuxaudio.org/listinfo/linux-audio-dev
Received on Sun May 18 16:15:04 2014

This archive was generated by hypermail 2.1.8 : Sun May 18 2014 - 16:15:04 EEST