0

By looking at /etc/ld.so.conf.d there is a libc.conf file that point to /usr/local/lib that contains the .so file necessary to run my application correctly. Even running ldconfig -v it is showed that the above path is set yet when I launch my program it fails to run the library contained in there. I must export LD_LIBRARY_PATH="/usr/local/lib" in order to correctly execute it but I need it to be set every time a new shell is open, so I tried to add the environment variable either to /etc/environment or /home/user/.profile or even /home/user/.bashrc without any success.

What's the correct way to set that variable permanently and why it is failing to pick the library even though a .conf file is pointing to the correct path?

EDIT:

ldd /usr/local/lib

asant@ANTONIO-PC:~$ ldd /usr/local/lib/libsqlcipher.so
        linux-vdso.so.1 (0x00007fff25d9e000)
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f133d2f2000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f133d2cf000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f133d0dd000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f133d6c5000)
asant@ANTONIO-PC:~$ ldd /usr/local/lib/libsqlcipher.so.0
        linux-vdso.so.1 (0x00007ffcaede4000)
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f02bb35d000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f02bb33a000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f02bb148000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f02bb730000)
asant@ANTONIO-PC:~$ ldd /usr/local/lib/libsqlcipher.so.0.8.6
        linux-vdso.so.1 (0x00007ffe7daa7000)
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007ff66585b000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007ff665838000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007ff665646000)
        /lib64/ld-linux-x86-64.so.2 (0x00007ff665c2e000)

0 Answers0