尝试运行一个名为 worldforge 的程序,但出现错误

尝试运行一个名为 worldforge 的程序,但出现错误

我最近下载了一个名为 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.1librtmp1

为了实现这一点,我们需要在程序可执行文件可以找到的位置创建一个符号链接。由于这是一种黑客行为,因此最好不要让其他应用程序自动找到相同的链接。很有帮助的是,此应用程序~/.ember/lib默认将其添加到其库搜索路径中。

我建议你

  1. 确保librtmp1软件包已安装,

    sudo apt install librtmp1
    
  2. 创建目录~/.ember/lib

    mkdir -p ~/.ember/lib
    
  3. 将符号链接放在那里。

    ln -sT /usr/lib/$(uname -m)-linux-gnu/librtmp.so.1 ~/.ember/lib/librtmp.so.0
    

如果应用程序现在失败并出现“缺少符号”错误消息(或类似内容),请使用错误消息更新您的问题并通过评论通知我,以便我可以解决它。


如果还有更多缺失的共享库,你可以搜索他们的包裹

  • 如果它们在 Xenial 中可用,请安装它们或

  • 搜索同一共享库的较新版本(包名末尾没有版本号)并重复上述过程。

相关内容