ldd显示找不到与共享库相关的库

问题描述

我正在使用一些-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提供的答案对我有用。