如何安装运行Dwarf Fortress所需的库libSDL_image-1.2.so.0?

我已经下载了Dwarf Fortress,我相信我已经收集了所有必需的文件。 但是,当我点击df文件时,它会问我一些事情,我点击“运行”,没有任何反应。 游戏根本不打开。

我在64位上使用Gnome 3运行Ubuntu 12.04。 如果我可以打开游戏,我相信我可以处理可能发生的其他问题。

我是Ubuntu的新手,自2009年以来我没有使用过Linux。

很可能有一些我不知道的文件。

在终端中运行:

$ ./df ./libs/Dwarf_Fortress: error while loading shared libraries: libSDL_image-1.2.so.0: cannot open shared object file: No such file or directory 

看来游戏找不到一些SDL库。 使用apt-file我得到的包(在12.10上)提供的库是libsdl-image1.2

 ➜ apt-file search libSDL_image-1.2.so.0 libsdl-image1.2: /usr/lib/x86_64-linux-gnu/libSDL_image-1.2.so.0 libsdl-image1.2: /usr/lib/x86_64-linux-gnu/libSDL_image-1.2.so.0.8.4 

所以你应该首先validation包是否真的安装了。 如果它是程序需要32位版本或它确实需要64位版本但无法找到它。

要安装32位版本:

 sudo apt-get install libsdl-image1.2:i386 

如果这仍然无法解决问题,您可以尝试使用LD_DEBUG=libs ./df运行游戏。 这将输出大量信息,可以帮助检测为什么它找不到该lib。 另外,请查看Dwarf Fortress文件夹中的README.linux文件,并检查是否满足所有要求。

在我的Ubuntu位上,我为DwarfFortress安装了3个32位包:

 sudo apt-get install libsdl-image1.2:i386 sudo apt-get install libgtk2.0-0:i386 sudo apt-get install libsdl-ttf2.0-0:i386 

除了上面的三个,至少在ubuntu 14.04上,你需要这个:

 sudo apt-get install libglu1-mesa:i386 

Ubuntu 16.04上没有任何现有的工作对我有用,但这样做:

 sudo apt-get install libsdl1.2debian libsdl-image1.2 libsdl-ttf2.0-0 

资源

需要16.04的盒子:

 sudo apt-get install libglu1-mesa 

所以,一起:

 sudo dpkg --add-architecture i386 sudo apt-get update sudo apt-get install libsdl-image1.2:i386 \ libsdl-ttf2.0-0:i386 \ libgtk2.0-0:i386 \ libglu1-mesa:i386 \ openssl:i386 sudo apt-get install libsdl1.2debian sudo apt-get install libsdl1.2debian \ libsdl-image1.2 \ libsdl-ttf2.0-0 sudo apt-get install libglu1-mesa