36

I install custom software in /usr/local/lib. How do I set the PATH and LD_LIBRARY_PATH in CentOS 6 system-wide to use /usr/local/lib. I realize there may be more than one way. What's the simplest and most standard way?

10

You can add it in /etc/bashrc, say, at the end.

export PATH=$PATH:/usr/local/lib
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
  • 5
    While this works, for a proper installation, see @Olivier S's answer below. – csl Apr 21 '16 at 12:00
  • 2
    Also, OP probably wanted $PATH to refer to /usr/local/bin instead of /usr/local/lib. I agree that's not the original question, but custom software is standardly installed in /usr/local prefix with binaries in /usr/local/bin, libraries in /usr/local/lib, etc. – chutz Aug 22 '17 at 8:18
79
+50

You can edit the file /etc/ld.so.conf and add your path /usr/local/lib to it or create a new file in /etc/ld.so.conf.d/ like /etc/ld.so.conf.d/usrlocal.conf and put only the following line in it

/usr/local/lib

Then run ldconfig -v as root, and you're done.

  • 9
    +1: imho this is a much cleaner solution than the accepted one. – Blizz Oct 20 '12 at 12:53
  • 5
    Dare I call this method "proper"? – Tim Oct 29 '13 at 16:50
  • I had to run this as root (via sudo) – Code Abominator May 18 '18 at 5:07
  • 1
    Is this what you meant to say: "you can edit /etc/ld.so.conf and /usr/local/lib" ? – ThomasMcLeod Jun 26 '18 at 20:00
  • But after doing this I am getting error /usr/lib64/python2.6/site-packages/pycurl.so: undefined symbol: CRYPTO_set_locking_callback while using yum. What to do? – erTugRul Aug 29 at 11:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.