1、解压文件
2、拷贝本机编译过的driver、addr_driver、portbind到bin目录下。
3、修改lima.config配置文件:
lib目录
bin目录
4、运行./addr_port 端口号
5、运行./driver lima.config
报错:
**********************************************************
* You have incorrectly compiled the MudOS driver. This *
* driver is not compatible with the LIMA mudlib. Please *
* make the following changes to 'options.h' (or *
* 'local_options' if it exists) in the driver source, *
* and recompile. *
**********************************************************
#define NO_ADD_ACTION is required for LIMA libs.
#undef OLD_ED is required for LIMA libs.
#define PACKAGE_PARSER is required for LIMA libs.
**********************************************************
按照上面说的修改mudos源码目录下的options.h文件。
重新编译mudos:
gmake clean all
6、复制新生成的文件到bin下,重新运行报错:
/secure/simul_efun/misc.c line 734: Undefined function base_name before
用ctags -R *
生成tag list,然后vi -t tag
搜索base_name,在某个文件下找到base_name函数的定义,拷贝到misc.c文件即可解决。
7、运行成功,使用telnet连接,创建新用户报错:
******** FATAL ERROR: Segmentation fault
MudOS driver attempting to exit gracefully.
(current object was /secure/user#4)
--- trace ---
Object: /secure/user#4, Program: <function>
in <function>() at
Object: /secure/user#4, Program: /secure/user/inputsys.c
in dispatch_modal_input() at /secure/user/inputsys.c:311
arguments were ("12345")
locals were: CLASS( 6 elements
(: login_handle_logon, 3, 0 :),
"Please enter your password: ",
1,
0,
0,
0
)
Object: /secure/user#4, Program: <function>
in <function>() at
'login_handle_logon' in '/ secure/user/login.c' ('/ secure/user#4') /secure/user/login.c:386
arguments were (3,0,"12345")
locals were: 0
--- end trace ---
crash() in master called successfully. Aborting.
已放弃 (core dumped)
直接定位到源码中,通过修改源码解决。