[Game]安装automanic&lincity(失败)

EasyWine上看到的这个游戏,觉得和我以前玩的暴力赛车(tdr2000,现在还珍藏着呢,撞车就赚钱,把人家的车都撞坏了就胜利,特过瘾;还有一个更早的,可惜名字实在是忘记了,也找不到安装盘了,主角有两辆车可选,车子正中间都有一道类似嬉皮士头发的“锯齿”,当然也可以换用其他车,鼠标是一只断掉了滴着鲜血的手!)有点类似,所以下下来体验一下。

automanic下载后,压缩包中既有源码也有二进制文件,直接运行的话,提示缺包,先是提示缺少libCgGL.so, libCg.so,这个可以从nvidia官网下载,解压缩后,选择对应的架构,把同名文件ln到/usr/lib即可;然后又提示缺少libode.so,安装源中的libode0c2,然后把libode.so.0 ln为/usr/lib/libode.so;再提示缺少libcal3d.so.11,安装源中的libcal3d11c2a即可。

然后就是个大牌了,提示缺少Crystal Space,于是安装crystalspace相关的包:

aptitude install crystalspace (同时会装上libalut0 libmikmod2) aptitude install crystalspace-data aptitude install crystalspace-dev

但是游戏仍然无法运行,没办法,用源码手工编译好了:

./configure … checking for cel-config… no configure: error: *** CEL could not be found or was unusable. The latest version is always *** available from http://cel.crystalspace3d.org/

看来还缺少cel,大概也是crystalspace项目的一部分,而cel也没有提供二进制文件,源中也没有,所以需要手工编译,从这里下载下来源文件包,解压缩然后./configure & make & make install。

也可以使用jam安装,crystalspace3d官方文档推荐使用jam,效果是一样的。可是安装完成之后,运行测试程序walktest却出错:

$ walktest WARNING: could not load plugin ‘crystalspace.graphics3d.opengl’ WARNING: failed to initialize plugin ‘crystalspace.console.output.standard’ Segmentation fault

关于这个错误信息,这里倒是有个小讨论,解决方法,是安装mesa-dev,而我发现ubuntu中只有libgl1-mesa-dev和libglu1-mesa-dev,所以装上试试,同时还会安装上mesa-common-dev,安装完之后重新编译。。。重新编译以后,错误居然更多了:

$ walktest WARNING: could not load plugin ‘crystalspace.font.server.freetype2’ WARNING: could not load plugin ‘crystalspace.font.server.freetype2’ ERROR: Couldn’t load plugin with class ‘crystalspace.font.server.freetype2’! WARNING: could not load plugin ‘crystalspace.graphics2d.glx’ Error loading Graphics2D plugin. WARNING: failed to initialize plugin ‘crystalspace.graphics3d.opengl’ WARNING: failed to initialize plugin ‘crystalspace.console.output.standard’ Segmentation fault

看来问题没有解决,还是把那三个包删除了吧。再回过头看看crystal space所依赖的外部包,逐一检查是否安装正常,问题也许就出在这里。

zlib – zlib1g, zlib1g-dev都已安装 libpng – libpng12-0, libpng12-dev都已安装 libjpeg – libjpeg-progs, libjpeg62都已安装 jam – 也安装上了

再检查一下可选包

freetype2 – libfreetype6装上了,libfreetype6-dev没装,装之 cg – 上面说过了,已经装上了 ode – 同cg bullet – 源中没找到对应,暂时先不装 cal3d – libcal3d11c2a已装,libcal3d11-dev没装,装之 lib3ds – 源中有lib3ds-dev,未装,装之 ogg/vorbis – libvorbis0a, libvorbisenc2已装,libvorbis-dev未装,先忽略声音问题,暂时先不装 libmng – libmng1已装,libmng-dev未装,装之,同时会捎带装上libjpeg62-dev liblcms1-dev caca – caca-utils应该不用装吧,libcaca-dev未装,装之,同时会捎带装上libncurses5-dev libslang2-dev libx11-dev libxau-dev libxdmcp-dev libxext-dev x11proto-core-dev x11proto-input-dev x11proto-kb-dev x11proto-xext-dev xtrans-dev cegui – libcegui-mk2-dev未装,装之,同时会捎带装上libcegui-mk2-0c2a libxerces27 libxerces27-dev wxWidgets – 看介绍好像没用,不装了 maps – 运行demo所需要的,不装了

。。。上述能装的都装了之后,再./configure,然后查看config.log,结果依然失望:

cs_cv_libCg=no … cs_cv_libgl=no … cs_cv_libode=no … cs_cv_libopenal=no … cs_cv_libsdl=no

这些明明装上了的包也识别不出来,或许是位置不对什么的问题,在config.log搜索glx也没有结果,以我的水平看来无法解决此问题了,就此打住,没用的东西都删掉,这个游戏我不玩了,清闲一点好好过年!

Update:

后来发现,我确实没有安装opengl的library,因为我忘记了凡是手工编译包的情况,都需要安装***-dev包,ev包中含有编译时需要的头文件,不带dev的包都只是二进制文件而已。所以,在安装lincity的时候就顺利多了,凡是缺少的包我都能装上。不过最终还是没有能安装成功,因为configure之后,需要用jam编译,可我输入jam命令之后,电脑什么都不干,无奈只好再次放弃。下面是一些configure时缺少的包的安装记录:

checking for libxml-2.0 >= 2.6.11… Package libxml-2.0 was not found in the pkg-config search path. Perhaps you should add the directory containing `libxml-2.0.pc’ to the PKG_CONFIG_PATH environment variable No package ‘libxml-2.0’ found configure: error: Library requirements (libxml-2.0 >= 2.6.11) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them.

install packages: libglib2.0-dev libglibmm-2.4-dev libsigc++-2.0-dev libxml++2.6-dev libxml++2.6c2a libxml2-dev

checking for OpenGL library… no configure: error: Couldn’t find opengl libraries or headers

install packages: libgl1-mesa-dev mesa-common-dev

checking for sdl-config… no checking for SDL – version >= 1.2.5… no *** The sdl-config script installed by SDL could not be found *** If SDL was installed in PREFIX, make sure PREFIX/bin is in *** your path, or set the SDL_CONFIG environment variable to the *** full path to sdl-config. configure: error: Please install libsdl >= 1.2.5

install packages: libaa1-dev libartsc0-dev libasound2-dev libaudio-dev libaudiofile-dev libdirectfb-dev libdirectfb-extra libesd0-dev libfreetype6-dev libglu1-mesa-dev libice-dev libjpeg62-dev libncurses5-dev libsdl1.2-dev libslang2-dev libsm-dev libx11-dev libxau-dev libxdmcp-dev libxext-dev libxt-dev x-dev x11proto-core-dev x11proto-input-dev x11proto-kb-dev x11proto-xext-dev xtrans-dev

checking for SDL_mixer >= 1.2… not found configure: error: Please install SDLMixer >=1.2.2

install packages: libogg-dev libsdl-mixer1.2-dev libsmpeg-dev libvorbis-dev

checking for SDL_image >= 1.2… not found configure: error: Please install SDLImage >= 1.2.1

install packages: libsdl-image1.2-dev libtiff4-dev libtiffxx0c2

checking for SDL_ttf >= 2.0.0… not found configure: error: Please install SDL_ttf >= 2.0.0

install packages: libsdl-ttf2.0-dev

checking for SDL_gfx >= 2.0.13… not found configure: error: Please install SDL_gfx >= 2.0.13

install packages: libsdl-gfx1.2-4 libsdl-gfx1.2-dev

checking for physfs >= 1.0.0… not found configure: error: Please install physfs >= 1.0

install packages: libphysfs-dev

再后来。。。我从lincity官网上发现,debian和ubuntu等linux下都有现成的二进制包可用,我居然舍近求远。。。猪年不利啊。。。:( 不过已经没有心情再安装了。

Leave a Reply

Your email address will not be published. Required fields are marked *