ldd 显示找不到共享库依赖项的库

ldd shows library not found for shared library dependency

我正在使用一些 -l 标志和一个 -L 标志来将一些共享库指定为依赖项。但是,当我用 ldd 查看生成的 .so 时,它显示找不到我链接的库。这是我正在编译的内容:

gcc -std=c99 -fPIC -shared -o lib/libmylib.so src/mylib.o -lmydep -L/path/to/libmydep.so

我发现有用的是,如果我在编译前将 LD_LIBRARY_PATH 设置为路径,它能够找到 -ltest 的库,但尽管我尝试过,但我未能成功从我的 Makefile 中设置 LD_LIBRARY_PATH,所以这对我来说不是一个可行的解决方案。

编辑:

我已经尝试在我的 Makefile 顶部使用以下内容导出 LD_LIBRARY_PATH

... some var definitions ...
LD_LIBRARY_PATH = /path/to/libmydep.so
... some more var definitions ...
export ... some vars ... LD_LIBRARY_PATH

... make targets start here ...

我终于遇到了 this 个问题,@schily 提供的答案对我有用。