Closed oXis closed 8 years ago
Hi Ben,
after doing 'sudo make install', please run 'sudo ldconfig', and your problem should be solved.
On how automake works with shared libraries: if the installation is to a non-system location (system locations are the directories in /etc/ld.so.conf and /etc/ld.so.conf.d), then it sets the RPATH field in the ELF header to find the shared libraries. If the installation is to a system location, then no RPATH is set as the library will be found by default. With the caveat that on some systems, like Linux, the system libraries are cached, and after installation one needs to update the cache with 'ldconfig'.
Everything you show about about the build of Jellyfish is normal. That is the way Libtool works.
Maybe I should run 'ldconfig' as a post installation hook?
Thank you for the explanation. And yes, "ldconfig" solved the issue (maybe the cache is updated when the system starts). I might be a good idea to run "ldconfig" as a post-install hook, the install process will be more straightforward with no extra command to run after the "make install" call.
Thanks again.
Ben
Hi,
I found why we have this error
After compiling Jellyfish when you type "(sudo) make install", it's the dynamic linked binary that is installed.
Note the "libjellyfish-2.0.so.2 => not found". Sure we can put
export LD_LIBRARY_PATH="/usr/local/lib
in our .bashrc instead, or fix the "not found".I tried to find where you say which binary you want to install with no success. I'm not used to automake (more a cmake guy :smile:)
Cheers!
Ben