当库已经在/usr/local/lib中时,无法找到共享库
cannot find shared library when library already in /usr/local/lib
首先使用-L../
标志来指定../
中的.so
文件。虽然它不起作用,但我将库复制到/usr/local/lib/
,删除-L
标志,重新编译,它仍然不起作用。这是我的Makefile
:
CFLAGS = -std=c++11 -lstdc++ -Wall -I../src/ -L../
all:
$(CXX) $(CFLAGS) example.cpp -o example -ltest
库文件调用libtest.so
并放置在../
中,它编译成功,但在两种情况下运行它时,我得到了error while loading shared libraries: libtest.so: cannot open shared object file: No such file or directory
。
环境变量LD_LIBRARY_PATH
用于在程序成功编译和链接后搜索包含库的目录。
所以,如果你设置:
export LD_LIBRARY_PATH=/path/to/where/your/library/is:$LD_LIBRARY_PATH
相关文章:
- 嵌套在类中时无法设置成员数据
- 当字符串存储在变量中时,如何将字符串转换为wchar_t
- 尝试将lambda函数放在队列中时出现一般分配器错误(可能是与unique_ptr有关的错误)
- 在 Android Studio 中使用 C++ 共享对象时出现问题
- 如何在 Linux 中构建共享库时使未定义引用的链接器失败
- 在共享C++库中加载共享库时C++未定义的符号,该库本身由 Python 加载
- 在 Windows 中加载共享库时在特定路径中选取 dll
- 我可以在libleveldb.a中找到符号,但是当我创建共享库时,找不到相同的符号。
- 在Python中加载共享库时未定义的符号
- 在sudo中加载共享库时的错误
- C ++"在使用MySQL C API生成的共享库时未在此范围错误中声明
- 在 c++ 中实现共享指针时如何处理常量对象
- 当c++对象位于单独的共享库中时,我如何向工厂自动注册这些对象
- 封装在共享指针中时的矢量构造
- 链接到共享库时 cmake 中"No rule to make target"错误
- 当使用extern在文件之间共享常量时,为什么定义中需要extern
- 当shared_ptr的实例仍在作用域中时,共享指针的对象被删除
- 当库已经在/usr/local/lib中时,无法找到共享库
- 在vector中使用共享指针时发生内存泄漏
- 尝试在qml文件中使用共享库时出错