【发布时间】:2014-11-06 15:26:55
【问题描述】:
我正在尝试使用我在另一个目录中构建的库来编译 C++ 程序(在 Linux 和 OS X 上):
$ g++ -I./include -L./lib src/main.cpp -lale -o proj
“ale”只是我正在使用的库(./lib/libale.so 中的 libale.so)
它编译所有东西,但是当我运行它时,我收到以下错误:
./proj: error while loading shared libraries: libale.so: cannot open shared object file: No such file or directory
但是,如果我将 libale.so 放入与可执行文件相同的目录中(或添加符号链接),它确实有效。我正在寻找一些解决方案,一个建议是设置LD_LIBRARY_PATH。但是,我宁愿在编译期间直接链接路径。有没有办法做到这一点?
【问题讨论】:
标签: c++ linker g++ shared-libraries clang