I'm running Mandrake 10, with kernal 2.6. I installed
jack-audio-connection-kit-0.98.1 and it seems to work
with the examples provided. However, I'm at a loss when
it comes to compiling, linking, and running a file
outside of the make file provided in the examples. That is,
make jack_simple_client
produces an executable that works fine.
However, I really don't understand much of what the
make file is doing. What is the .libs directory for,
which seems to get a copy of the executable?
When I my own version of simple_client and compile it:
gcc -g -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -Wall
-L/usr/local/lib -lpthread -ldl -lm -ljack -o
simple_client simple_client.c
it compiles and links okay. But when I run it I get the
following message, even though libjack.so.0 is in
/usr/local/lib
[hufe@localhost pelaudio]$ ./simple_client mark
./simple_client: error while loading shared libraries:
libjack.so.0: cannot open shared object file: No such
file or directory
[hufe@localhost pelaudio]$
What is the purpose of the .libs directory? Also, what
would make the library invisible at run time, even
though it is there?
Logged In: NO
Maybe downloading the devel rpms could work. I think they are
libjack0 and libjack0-devel
Logged In: NO
The first thing to check would be /etc/ld.so.conf. Make
sure that /usr/local/lib is there. If you have to add it,
do so, save the file, then run ldconfig. That's at least a
place to start.