Shared library not found

ccall

#1

I’m working on writing a julia interface to SuperLU (https://github.com/dmbates/SuperLU.jl is outdated). So I download and install SuperLU, and check that the shared library is properly installed:

~: ls /usr/local/lib/libsuperlu.so* -l
lrwxrwxrwx 1 root root     15 May  2 10:06 /usr/local/lib/libsuperlu.so -> libsuperlu.so.5
lrwxrwxrwx 1 root root     19 May  2 10:06 /usr/local/lib/libsuperlu.so.5 -> libsuperlu.so.5.2.1
-rwxr-xr-x 1 root root 724818 May  2 10:06 /usr/local/lib/libsuperlu.so.5.2.1

However, julia doesn’t find it:

julia> ptr = ccall(("intMalloc",:libsuperlu), Ptr{Cint},(Cint,),4)
ERROR: error compiling anonymous: could not load library "libsuperlu"
libsuperlu.so: cannot open shared object file: No such file or directory

julia> Base.Libdl.find_library("libsuperlu",String[])
""

Any idea what I’m doing wrong?


#2

Found the issue, and it had nothing do with julia. Running ldconfig as suggested here solved the problem.