1、在运行前先安装libsdl-image1.2:
sudo apt-get install libsdl-image1.2
2、然后切换到assaultcube程序目录:
$cd AssaultCube_v1.0.2/
然后运行游戏:
./assaultcube.sh
但是,在执行第2步的命令时报错,提示找不到“libopenal.so.0”这个文件。
于是:apt-cache search libopenal,找到libopenal0a,
于是:whereis libopenal,
得到:libopenal: /usr/lib/libopenal.a /usr/lib/libopenal.so /usr/lib/libopenal.la,
查看/usr/lib下libopenal的相关文件: ls -l /usr/lib/libopenal*,结果显示如下:
-rw-r--r-- 1 root root 352458 2007-12-04 07:32 /usr/lib/libopenal.a
-rw-r--r-- 1 root root 819 2007-12-04 07:32 /usr/lib/libopenal.la
lrwxrwxrwx 1 root root 18 2010-04-30 19:12 /usr/lib/libopenal.so -> libopenal.so.0.0.0
-rw-r--r-- 1 root root 225448 2007-12-04 07:32 /usr/lib/libopenal.so.0.0.0
lrwxrwxrwx 1 root root 18 2009-10-30 23:53 /usr/lib/libopenal.so.1 -> libopenal.so.0.0.0
说明存在指向“libopenal.so.0.0.0”的链接文件“libopenal.so.1”,但的确是没有“libopenal.so.0”这个文件。
在其官网论坛查找相关资料后,打算编译“freealut-1.1.0”,但是编译没有成功,提示存在一些依赖关系问题。
于是更改思路,尝试在/usr/lib目录下建立指向“libopenal.so.0.0.0”的符号链接“libopenal.so.0”,执行如下命令:
sudo ln -s libopenal.so.0.0.0 /usr/lib/libopenal.so.0
然后,再次执行“ls -l /usr/lib/libopenal*”查看,结果显示如下:
-rw-r--r-- 1 root root 352458 2007-12-04 07:32 /usr/lib/libopenal.a
-rw-r--r-- 1 root root 819 2007-12-04 07:32 /usr/lib/libopenal.la
lrwxrwxrwx 1 root root 18 2010-04-30 19:12 /usr/lib/libopenal.so -> libopenal.so.0.0.0
lrwxrwxrwx 1 root root 18 2010-04-30 19:24 /usr/lib/libopenal.so.0 -> libopenal.so.0.0.0
-rw-r--r-- 1 root root 225448 2007-12-04 07:32 /usr/lib/libopenal.so.0.0.0
lrwxrwxrwx 1 root root 18 2009-10-30 23:53 /usr/lib/libopenal.so.1 -> libopenal.so.0.0.0
这样已经创建了指向“libopenal.so.0.0.0”的链接文件“libopenal.so.0”。
再次执行第2步中的“./assaultcube.sh”,完美运行。
说实话,这真是linux上一款不错的游戏,运行效果非常不错。
目前最新的AssaultCube已经发布了,版本是“1.1.0.1”,于2010年8月9日发布。
其官网地址为:
OS:Ubuntu8.04.4
QQ:81064483
E-mail:AllenNewOK@126.com
版权声明:若要转载,需征得作者AllenNewOK的同意,必须以超链接形式标明文章原始出处和作者。