程序运行时出现“error while loading shared libraries”
发布日期:2021-05-17 17:01:40 浏览次数:10 分类:精选文章

本文共 593 字,大约阅读时间需要 1 分钟。

开发者在重装Linux系统后,运行可执行文件时遇到“error while loading shared libraries”,提示找不到某个库的路径。这样的问题在开发中较为常见,因此开发者已经养成了应对方法。

首先,开发者回忆起常用解决方案:将程序依赖的库路径添加至/etc/ld.so.conf文件中,随后执行ldconfig命令。该命令用于更新动态库缓存信息,将添加的路径及下属动态库保存至/etc/ld.so.cache文件,便于程序在运行时搜索到所需的动态库。

打开/etc/ld.so.conf后发现仅包含“include /etc/ld.so.conf.d/*.conf”一行内容。因此,开发者在该文件的下方逐行添加了程序所依赖的各个库的路径。完成后,执行/sbin/ldconfig命令,将配置缓存至/etc/ld.so.cache文件。

此时,开发者通过检查/etc/ld.so.cache内容,发现系统已经能找到包括ffmpeg库在内的各个依赖库,如libavcodec.so。这一验证表明,添加路径并执行ldconfig后,问题已得到解决。

在完成上述步骤后,开发者意识到一个更好的解决方案:在遇到类似问题时,可以直接编辑/etc/ld.so.conf并添加需要的库路径,然后执行ldconfig。通过这种方式,可以有效地解决动态库路径问题,确保程序能够顺利运行。

上一篇:STL容器vector、list和deque的区别
下一篇:设计模式UML之创建型模式

发表评论

最新留言

关注你微信了!
[***.104.42.241]2025年04月14日 00时29分17秒