On Thursday 09 September 2010, Niels Mayer wrote: > Thanks for making this update available. All your programs are very nice. You are very kind. > One issue I've had w/ drumstick, perhaps ever since I installed kmid > (*), is that when I "sudo make install", I end up with binaries that > don't work: > > gnulem-301-.../drumstick-svn/build> /usr/local/bin/drumstick-testevents > /usr/local/bin/drumstick-testevents: error while loading shared > libraries: libdrumstick-alsa.so.0: cannot open shared object file: No > such file or directory > > However, using the just built binary "in place" works fine: You may be experiencing issues related to RPATH. The build system has this feature (that I use in my projects) to link executables to libraries including the whole library path into each executable. This is very convenient when you are developing libraries and test programs together, because it allows you to test the programs in place without installing them and without worrying about environment variables like "LD_LIBRARY_PATH". CMake creates a "make install" command that shall relink the executables dropping the rpaths, so in a production environment the programs behave as usual. More about this, here: http://www.vtk.org/Wiki/CMake_RPATH_handling To test if a program has RPATHs, use a command like this: $ ldd /usr/local/bin/drumstick-playsmf linux-gate.so.1 => (0xffffe000) libQtCore.so.4 => /usr/lib/libQtCore.so.4 (0xb7498000) libasound.so.2 => /usr/lib/libasound.so.2 (0xb73bc000) libdrumstick-alsa.so.0 => /usr/local/lib/libdrumstick-alsa.so.0 (0xb735e000) libdrumstick-file.so.0 => /usr/local/lib/libdrumstick-file.so.0 (0xb730c000) libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb721b000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb71fd000) libc.so.6 => /lib/libc.so.6 (0xb7092000) [...] The above output shows a program that is installed without RPATH. The same command on a program in my development directory shows this: $ ldd build/bin/drumstick-playsmf linux-gate.so.1 => (0xffffe000) libQtCore.so.4 => /usr/lib/libQtCore.so.4 (0xb7602000) libasound.so.2 => /usr/lib/libasound.so.2 (0xb7526000) libdrumstick-alsa.so.0 => /home/pedro/Projects/drumstick/build/lib/libdrumstick-alsa.so.0 (0xb74c8000) libdrumstick-file.so.0 => /home/pedro/Projects/drumstick/build/lib/libdrumstick-file.so.0 (0xb7476000) libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb7385000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb7367000) libc.so.6 => /lib/libc.so.6 (0xb71fc000) [...] The distro's packaging process already takes care of all this. You can use these features for your own convenience, but my advice is to clean your system and install all the programs from the distro repositories, or install from sources but use a recent cmake version and read the documentation about the different options and features available. If you are unsure: uninstall the old versions before compiling a new drumstick release, and uninstall the libraries that are producing errors when running ldconfig. Regards, Pedro _______________________________________________ Linux-audio-user mailing list Linux-audio-user@xxxxxxxxxxxxxxxxxxxx http://lists.linuxaudio.org/listinfo/linux-audio-user