日期:2014-05-16  浏览次数:20581 次

嵌入式Linux如何设置动态连接库的搜索路径?
  交叉编译环境下,用主机编译完成带动态链接库的程序,当移植到开发板(arm 9260,内核2.6.30)时,如何设置开发板的搜索路径(如:/app/lib)。我试了一下两种方法:
1.export $LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/app/lib,提示找不到所需的动态库
2.在/etc/ld.so.conf里添加/app/lib,然后执行:ldconfig命令,还是提示找不到所需的动态库。
  请问还有其他的办法可以设置么?
补充:我把动态库放到/lib下就可以正常运行。

------解决方案--------------------
没有做过嵌入式开发,不过用gcc编译的时候加参数
-rpath

就可以设置路径(一般这样用都是设置相对路径)
编译出来的程序,用ldd命令你就可以看到它自动连接到你设置的相对路径的动态库了

这样就不用设置LD_LIBRARY_PATH了

自己搜索一下 -rpath怎么用吧