[LAD] ladspa: dlopen failed for tap ladspa plugins

Zlobin Nikita cook60020tmp at mail.ru
Sun May 18 10:42:01 UTC 2014


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 at lists.linuxaudio.org
> >>>>> http://lists.linuxaudio.org/listinfo/linux-audio-dev



More information about the Linux-audio-dev mailing list