Archive

Archive for February, 2007

[Game]经典游戏模拟城市3000

February 20th, 2007 Fwolf No comments

[Game]Simcity3000

EasyWine真是个好网站,为我们提供了很多linux下的游戏,虽然前面两个游戏没有安装成功,但这个模拟城市3000还是比较顺利的,并且安装完成之后,图像、音乐、音效一个都不少,相当完整,所以值得推荐。

首先下载那个iso文件,626M,然后mount,之后运行光盘上的setup.sh安装游戏:

sudo mount \[Games\ Linux\]-SimCity-3000.iso /media/cdrom -t iso9660 -o loop cd /media/cdrom sudo sh setup.sh

我是安装到了/big2/game/simcity3000目录,安装过程还会提示是否安装动画、数据文件等,如果不安装的话,玩之前可能还需要再次mount这个iso文件。安装完成后运行游戏目录下的sc3u启动游戏,却遭遇如下错误:

$ ./sc3u ./sc3u: relocation error: ./sc3u: symbol _dl_global_scope, version GLIBC_2.0 not defined in file ld-linux.so.2 with link time reference

这里查到,可能是这个游戏放出来得比较早了(游戏出版也有好几年了),linux内核早就升级了,所以需要下载一个补丁文件修正一下,easywine上也给出了补丁文件,估计和老外说的这个sc3u-2.0a-x86.run应该是一样的,7.1M,下载然后在游戏目录下运行即可。另外再对启动文件sc3u调整一下,另外编写一个文件sc3u_fixed,内容如下:

#! /bin/bash LD_ASSUME_KERNEL=2.4.2 /big2/game/simcity3000/sc3u

加上x权限,使用这个脚本启动游戏。主要是设置当前系统的内核版本,这样游戏才能找到适当的库文件。不过这些都做完之后,还有可能会遇到另外一个错误:

$ ./sc3u_fixed /big2/game/simcity3000/sc3u: error while loading shared libraries: libdl.so.2: cannot open shared object file: No such file or directory

要解决这最后一个问题,首先确保libg++2.8.1.3-glibc2.2 libstdc++2.10-glibc2.2这两个包都正常安装了,然后下载loki的游戏兼容性补丁包(参见这里的讨论),把补丁包解压缩,比如我是解压到/big2/game/lib/Loki_Compat目录了,然后对刚才那个sc3u_fixed脚本文件进行调整:

#!/bin/bash COMPAT=/big2/game/lib/Loki_Compat/ export LD_LIBRARY_PATH=$COMPAT LD_ASSUME_KERNEL=2.4.2 $COMPAT/ld-linux.so.2 /big2/game/simcity3000/sc3u

现在,就可以正常启动游戏了,甚至连片头动画都是完整的,速度嘛,感觉比以前在windows下玩还要快很多。不过如果你无法调整分辨率的话,试试把$HOME/.loki的owner调整为你自己,因为如果是使用root安装的游戏,这个目录对普通用户是不可读的,chown一下就可以正常保存游戏设置了。

另外loki原来是一个专门把知名游戏移植到linux下的公司,看看他提供的产品,还是不少的嘛。

update @ 2007-02-21 铁血联盟2未完的使命(Jagged Alliance 2)也可以使用这种方法启动,看看ja2_fixed:

#!/bin/bash COMPAT=/big2/game/lib/Loki_Compat/ export LD_LIBRARY_PATH=$COMPAT LD_ASSUME_KERNEL=2.4.2 $COMPAT/ld-linux.so.2 /big2/game/ja2/ja2

用第一张盘安装,玩的时候mount第二张iso,只是。。。怎么修改分辨率啊?我这里只能用640*480,郁闷。

Related posts

Categories: Game, Linux Tags:

Azureus崩溃的解决+2个网站推荐

February 19th, 2007 Fwolf No comments

过年当然要多下点电影看咯,可是Azureus不争气,开了一晚上电脑下电影,早上起来却发现azureus早罢工了,不仅如此,想再次打开也不行!启动之后,就闪一下主界面,就没了,手快的话能够把屏幕截下来,正在下载的种子还都在,系统为ubuntu 6.10 edgy,azureus 2.5.0.0。

找到错误信息上网查了查,有说需要升级libstdc++5的,有说需要从azureus网站直接下载jar文件覆盖现有文件的,还有更改环境变量的,不过这些方法感觉都比较悬,有些根本没用,最有有个人出了个招,把$HOME/.azureus/logs下面的文件都删除,就可以了。我试过,还真行,logs目录下只有一些.log文件,不过删除之后azureus确实能够启动正常使用了,并且和全部删除$HOME/.azureus目录的方法相比,用户设置还能够完整得保留下来。

顺便再推荐2个网站:

http://paste.lisp.org/,专门贴代码片段的网站,无需注册便可使用,主要想法是解决在irc讨论中,代码贴到irc频道里面观看不方便的问题,不过由于出身lisp族群,代码显示主要倾向于c, python, lisp, java等。另外对中文的支持也不行,看我贴的这个vimrc,不仅没有vi那样的语法高亮,连中文都显示不出来。

http://545at.com/htm/jseasy.htm,国人作的一个ajax开源库,论坛使用的是google groups,看了看在线演示,效果还是不错的,也很实用,小伙儿长得也挺帅:)

update @ 2007-02-21 好像还是不行,删除logs目录的方法,只能让azureus运行几个小时,然后就又无声无息得退出了,所以只好又下载了一个azureus 2.5.0.4,应该不出问题了吧。

Related posts

Categories: Internet, Tools Tags:

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

February 19th, 2007 Fwolf No comments

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下都有现成的二进制包可用,我居然舍近求远。。。猪年不利啊。。。:( 不过已经没有心情再安装了。

Related posts

Categories: Game, Linux Tags:

愤怒,无奈,失望

February 12th, 2007 Fwolf 2 comments

在家中实验好ubuntu edgy之后,开始在公司安装,但是,出乎意料的不顺。

本来公司的线路比家里的要好得多,可连接ubuntu官方给出的国内源一个快的也没有,海缆断之前,都是直接连us.archive.ubuntu.com的,慢但是稳定,但是升级edgy要下载几百m的东西,我可没那个耐心等,前段时间连台大的源非常快,峰值能上5、6百k,但是今天不行了,经常是一大串错误,刚开始还以为是我抓得太快,对方给禁了,后来发现不对劲,直接web一看,原来是连接被reset了,如果是极个别包还好说,我自己上web抓下来放到apt cache里就得了,后来发现很多包都这样,真是气死我了。

连接被reset,原因虽然不很明确,但作者却不言而喻,大好的技术,作点什么不好,搞这些歪门邪道,再说搞也把质量控制好,不要清白不分!

这位弟兄大概也是遇到了和我一样的问题,巧的是,他的网络线路和地理位置和我一样。

实在没办法了,从这里又找了几个源,现在用着亚特兰大的那个,效果还算可以,一会几十k,一会儿能到几百k,大体还能够接受吧。

网通连不上电信也就算了,中国人连国内,包括台湾省,还不如连国外网络快,真是羞死人了。海缆断的一个多月中,好像就新闻上简单报了报,重点分析的就是一些国外留学申请,甚至还不如前几天vista发布在新闻上露脸的机会多,原来网络在我们这里,连P都不算。

鲁迅还能“横眉冷对”一下,我们连指都不知道该指谁。

Related posts

Categories: Linux Tags:

把ubuntu dapper升级到edgy

February 12th, 2007 Fwolf 4 comments

其实早就该升了的,可是我怕不稳定,所以一直憋到现在,不过话说回来,什么LTS支持5年之类的,对普通桌面用户用处应该不大。

由于咱是老实人,所以还是使用官方提供的方法升级吧:

gksu “update-manager -c”

可是天不遂人愿那,我用的是cn99的源,firefox 1.5.0.8還是1.5.0.9版本有问题,打开有cookie的网站就挂,所以cn99源中大概删除了这个包,可我想用上面命令更新到edgy,就必须先把本机的包更新到最新版本,可这样只会得到错误:

W: Failed to fetch http://ubuntu.cn99.com/ubuntu/pool/main/f/firefox/firefox_1.5.dfsg+1.5.0.8-0ubuntu0.6.06_i386.deb 404 Not Found

。。。。

原来我搞错了,可以不升级包的,出现“Software Updates”窗口之后,默认会列出可更新的包,不过如果你是用“update-manager -c”命令调出来的,可以点一下下面的“Check”按钮,更新之后就能看到可更新软件列表上面出现了一行“New distribution release ’6.10′ is available – Upgrade”,点按钮按提示操作就能够升级到edgy了,不用手工修改源那么麻烦。

。。。。

直接升级太慢了,是从国外的archive.ubuntu.com上直接下载的,我還是手动修改源好了:

sudo apt-get update sudo apt-get upgrade sudo apt-get dist-upgrade

。。。。

经过漫长的下载与等待,终于完成了,网速慢的同志们升级可一定要用光盘啊,或者在局域网中作个镜像,不然得下载个几天。兴高采烈的重启机器,求神拜佛保佑不要出现问题。。。可还是在启动的时候停住了,硬盘灯一直不亮,用recove模式启动,发现会停留在“waiting for root file system”错误信息,很长时间不动的话,会返回几乎一个什么都干不了的shell,用另外一台电脑上网查到这里,用livecd启动进去,chroot some_dir /dev/hda,然后apt-get install udev。。。说实话这个地方我真不知道是怎么弄好的,udev也好,ubuntu-mini也好,我都没有敢实际的安装,因为看到随着安装需要删除的东西太多了。也不知鼓捣了什么,再一重启,居然就可以正常启动了,还有一样莫名其妙的就是启动splash没有啦,变成一行行原始英文往上滚了,中间居然还会变一下字体,寒。下次我再升级另外一台机器的时候,安装完就重新install一下udev,应该就不会出问题了吧?

不过好歹是可以启动了,登录以后,重新配置一下X,基本上使用就正常了,感觉:

  • 读硬盘的效率高了一些;
  • firefox2很好用;
  • bash字体改变了,需要手工再指定为simsun,不然看着发虚眼睛疼;
  • 内嵌的文泉驿字体我没用,用惯ms字体了,不过原来给同时安装的使用用过,超赞的;
  • 几十个包无法升级,需要手工aptitude install一下,有些涉及到版本树的分支,其中很多都是python2.4的包变更为python的;
  • 7z命令没了,原来p7zip变成了最简化包,想要原来的7z命令,安装p7zip-full包即可;

edgy还有一个很不习惯的改变,就是在fstab和grub中引入了uuid这个东西,比如升级后的fstab:

# /dev/hda1 — converted during upgrade to edgy UUID=7fa1d627-0068-44ec-9beb-1701f1544e88 / ext3 defaults,errors=remount-ro 0 1

不知道uuid这个东东先进在哪里,不过照原来的/dev/hd?相比,直观性差远了,有什么办法调整回去没有?

update @ 2007-02-12 apt-get dist-upgrade命令要执行两遍,第二遍的时候会更新upstart,这样重新启动就不会有问题了。

Related posts

Categories: Linux Tags: