程序链接的库不对,runpath无效

  • ubuntu18.04
  • 我编译生成的程序iee需要链接自己的tbb库,在/home/lwd/ncs/lib
  • readelf -d iee|grep PATH的结果是0x000000000000001d (RUNPATH) Library runpath: [/home/lwd/ncs/lib],所以iee是有正确的runpath的
  • 但是ldd -r iee|grep tbb的结果是libtbb.so.2 => /usr/lib/x86_64-linux-gnu/libtbb.so.2 (0x00007fc40f7c7000)因为库不对还有错误undefined symbol
  • 如果这样设置export LD_LIBRARY_PATH="/home/lwd/ncs/lib:$LD_LIBRARY_PATH"ldd -r iee|grep tbb的输出就是libtbb.so.2 => /home/lwd/ncs/lib/libtbb.so.2 (0x00007fcaad7ad000),iee也是可以运行的
  • 我的问题是为什么iee的runpath无效呢,和设置的LD_LIBRARY_PATH是同一个路径啊

指定LIBRARY_PATH呢?