问题描述
我正在使用一些-l
标志和-L
标志来指定一些共享库作为依赖项。但是,当我用.so
查看生成的ldd
时,它表明找不到与我链接的库。这是我正在编译的内容:
gcc -std=c99 -fPIC -shared -o lib/libmylib.so src/mylib.o -lmydep -L/path/to/libmydep.so
我发现可以工作的是,如果我在编译之前将LD_LIBRARY_PATH
设置为路径,就可以找到-ltest
的库,但是尽管我尝试了一下,但我仍无法成功设置{ {1}}来自我的Makefile,所以这对我来说不是可行的解决方案。
编辑:
我尝试导出LD_LIBRARY_PATH
并在Makefile顶部添加以下内容:
LD_LIBRARY_PATH
解决方法
我终于遇到了this这个问题,其中@schily提供的答案对我有用。