c – LD_LIBRARY_PATH,linux中的共享lib路径
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c – LD_LIBRARY_PATH,linux中的共享lib路径,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含820字,纯文字阅读大概需要2分钟。
内容图文
我写了一个共享对象,比如libsd.so,我将libsd.so及其头文件sd.h放在?/ lib中.
这是另一个使用libsd.so的程序,比如test.c,然后像这样编译它:
$gcc -o test test.c -I~/lib -L~/lib -lsd
然后我像这样运行测试:
$./test
./test_sd: error while loading shared libraries: libsd.so: cannot open shared object file: No such file or directory
所以我设置export LD_LIBRARY_PATH =.,然后它工作.但是如果我取消设置LD_LIBRARY_PATH并将LD_LIBRARY_PATH =?/ lib放在我的?/ .bashrc中,那么源?/ .bashrc,再次它不适用于./test,为什么?
export LD_LIBRARY_PATH =?/ lib与将?/ .bashrc中的LD_LIBRARY_PATH =?/ lib放在一起有区别吗?
解决方法:
如果没有导出,则声明的LD_LIBRARY_PATH仅在脚本(.bashrc)中有效.
使用导出它应该可以工作,但是设置这样的LD_LIBRARY_PATH通常不是一个好主意.
如果您不想在系统路径中安装库(例如/usr/lib),则应该使用在本地设置LD_LIBARAY_PATH并启动应用程序的脚本.
内容总结
以上是互联网集市为您收集整理的c – LD_LIBRARY_PATH,linux中的共享lib路径全部内容,希望文章能够帮你解决c – LD_LIBRARY_PATH,linux中的共享lib路径所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。