我最近下载了一个名为 Worldforge 的程序,它是一个开源的游戏制作器。我下载了它的可执行文件并授予它运行权限,但当我启动它时,它返回了此错误:
/tmp/.mount_dskVs4/usr/bin/ember.bin: error while loading shared libraries: librtmp.so.0: cannot open shared object file: No such file or directory
我尝试寻找答案,但我发现的唯一相关答案却没有用,如果有人能以任何方式提供帮助,我将不胜感激。
答案1
在 Xenial 中获取包并不是一件容易的事,所以我的第一个想法是从包librtmp0
中使用它,因为该库很有可能是向后兼容的。librtmp.so.1
librtmp1
为了实现这一点,我们需要在程序可执行文件可以找到的位置创建一个符号链接。由于这是一种黑客行为,因此最好不要让其他应用程序自动找到相同的链接。很有帮助的是,此应用程序~/.ember/lib
默认将其添加到其库搜索路径中。
我建议你
确保
librtmp1
软件包已安装,sudo apt install librtmp1
创建目录
~/.ember/lib
,mkdir -p ~/.ember/lib
将符号链接放在那里。
ln -sT /usr/lib/$(uname -m)-linux-gnu/librtmp.so.1 ~/.ember/lib/librtmp.so.0
如果应用程序现在失败并出现“缺少符号”错误消息(或类似内容),请使用错误消息更新您的问题并通过评论通知我,以便我可以解决它。
如果还有更多缺失的共享库,你可以搜索他们的包裹和
如果它们在 Xenial 中可用,请安装它们或
搜索同一共享库的较新版本(包名末尾没有版本号)并重复上述过程。