如何在linux下编译Mudos
2007/5/5 23:04:56

MudOS是整个Mud的基础。一个成功Mud 不只需要一个成熟的MudLIB,而且需要一个稳定的MudOS。
而对于不同版本的MudOS,MudLIB也需要一定的修改。如何修改就不是本文的主要介绍内容,以后有
时间继续和大家谈谈如何对于不同版本的MudOS来修改MudLIB。本次的主要内容是如何在Linux上成功
的编译MudOS和使用编译好的MudOS成功架设一个Mud。 现在流行的MudOS有两个版本:MudOS v22pre11和 MudOS v22.1b22。这两个版本的MudOS差异甚大,
但是在不同版本的Linux下编译过程基本上是一样的。下面就以v22pre11来介绍如何编译MudOS。
第一步:获得MudOS 源代码。
MudOS的源代码是share的,所以可以在不少地方得到它。可以从MudOS 的产地下载。
网址是:ftp://ftp.imaginary.com/pub/LPC/servers/MudOS/。但是我们推荐到Jackyboy(胖胖)
的泥巴大王Mud King那里下载。因为下载回的代码有不少的漏洞。对于C ++功力不够的巫师还无法修
改。而从Mud King下载的源代码已经由JackyBoy修改好了,不需要修改就可以直接编译。(见图) 
 

容易出的错误:
●没有下载原始MudOS 源代码的补丁。
○原始的MudOS 源代码中的几个文件有错误必须经过修改后才能成功架设Mud。
否则就虽然能成功编译MudOS 但是启动Mud 时会出现各种的错误。 
推荐:
直接下载已经包含了补丁的v22pre11压缩包。

第二步:上传源代码到服务器。
好了。这样我们从http://www.mudking.com下载了代码后,就需要将源代码上传到服务器来执行编译
过程。
容易出的错误:
●将下载回的tar 压缩包解开后在用WinZip压缩后才上传。
○这个是不行的。因为用WinZip压缩后的所有文件都为Dos格式。Linux或Unix下的文件格式不同。所
以在服务器解压开的文件内每行尾都有一个^M的符号。Unix是不能承认的。无法编译成功。
推荐:
用CuteFtp将下载回的tar格式文件上传到服务器。请不要一个一个文件的上传这样会出现不可预见的
编译错误。
第三步:解开压缩包。
在终端窗口中解开压缩包。(解压出的文件如图)
zcat v22pre11.tar|tar xv
 
 
第四步:执行编译初始化Shell命令集。
./build.MudOS
Preparing to build standard MudOS driver ...
Trying out some stuff to see what works; ignore errors ...
./build.MudOS: gmake: command not found
make: Nothing to be done for `nothing'.
./build.MudOS: xlc: command not found
mkdir: cannot make directory `tmp': File exists
install: illegal option -- f
Try `install --help' for more information.
rm: tmp/insttest: No such file or directory
mkdir: cannot make directory `obj': File exists
***************** Configuration completed **************
Installing MudOS on Linux 
Using install -c to install binaries in ../bin.
Using gcc -E for preprocessing.
Using gcc -O2 -fomit-frame-pointer -fstrength-reduce to compile.
Using bison -d -y to make the compiler.
Edit GNUmakefile if this is not what you want
Otherwise, type 'make' to build MudOS, then 'make install'.

容易出的错误:
●没有严格遵守Lunix和Unix下的文件名格式。
○要严格打入build.MudOS。
推荐:
由于不同的Lunix版本,使用的Shell也不同,所以最好用以下格式打入此命令:
./build.MudOS
 
 
 
第六步:执行编译命令集。
make
rm -f cc.h
echo "/* this file automatically generated by the Makefile */" > cc.h
echo '#define COMPILER "gcc"' >> cc.h
echo '#define OPTIMIZE "-O2 -fomit-frame-pointer -fstrength-reduce"' >> cc.h
echo '#define CFLAGS " -O2 -fomit-frame-pointer -f

下一页
返回列表
返回首页
©2025 MUD游戏网_文字mud 电脑版
Powered by iwms