开发者

Error while loading shared libraries

I am a C++ beginner. I have a c++ project that i built using the existing make files. I have a library that I linked from /usr/local/lib. Build is successful but when I run it, its complaining about the library that I linked form /usr/local/lib. If I copy that library to /lib64 and run my program, everything is fine. Please let me know what I should do to avoid this error. Thank you.

error while loading shared libraries: libactivemq-cpp.so.14: cannot open开发者_如何转开发 shared object file: No such file or directory


As Oli explained, you can set LD_LIBRARY_PATH, but you can also install the library permanently, even if it doesn't live in one of the standard directories. Start with

man ldconfig

it's quite important you know how that thing works.

  • by default (ie unless you do something) only libraries in the trusted directories (/lib and /usr/lib) will be picked up. I have no running 64 bits system available but i'm guessing on those the directories will be suffixed with 64
  • if you want ldconfig to pick up libraries in other dirs, add theses directories to /etc/ld.so.conf
  • after that, run ldconfig -v and check if they actually got picked up

And you'll be all set :-)

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜