- 主题:请教如何从FB2000转到KBS
原来的数据是FB2000 v1.0909,现在KBS已经可以编译安装好了,接下来就是数据转换了。
系统是FreeBSD 64Bit R9.0
请问有没有完整和系统一点的转换教程?精华区都看过了,都不太管用。
还有一点就是 /kbs_bbs/contrib/fb2k2smth下的转换程序怎么编译呢?没头绪啊...
非常感谢!!
--
FROM 113.68.17.*
谢谢指点,编译还是出错...
[Compiling gen_title.c]
gen_title.c: In function 'generate_board_title':
gen_title.c:42: warning: passing argument 4 of 'safe_mmapfile_handle'
from incompati
le pointer type
gen_title.c:106: warning: implicit declaration of function 'getbnum'
[Linking gen_title]
gen_title.o: In function `generate_board_title':
gen_title.c:(.text+0x5d6): undefined reference to `getbnum'
gen_title.c:(.text+0x5ff): undefined reference to `getbnum'
*** Error code 1
Stop in /usr/home/kbs/local_utl.
*** Error code 1
因为不会编程,所以有点菜,谢谢。。。
【 在 huangzy0138 (禹弟) 的大作中提到: 】
: c文件放在local_utl下面
: 然后修改local_utl目录下面的Makefile.am文件
: 加入这个文件名,然后重新编译
: ...................
--
FROM 113.68.17.*
kbs_bbs/local_util/Makefile.am文件如下:
CC="@LIBTOOL@"
CCLD="@CC@"
bin_PROGRAMS = poststat static usage Xhtml Bhtml listonline \
showBM idx0Ann lazybm fixdir autoundeny statBM gen_title \
find_rm_lost statguy autoclear showipdeny blogstat \
scanIP scanMODE listMODE ulevel dump_user_title
ultimate_search \
mails genhot bonlinelog uonlinelog dayuserlog alluserlog \
gennewboard outdaybm process_invalid_mail bmerge
rebuild_digest \
post_brdlog post_buse newpoststat genbplot sync_mailsize \
refresh_reply fix_sysop userexist fix_nowid scored fhedit \
postfilealt bootstrap utmpcheck \
chlevel convboards convpasswd calc_effsize \
conv_pc4fb2k gen_title strip_fh chfavbrd
EXTRA_DIST = urlencode.c
EXTRA_PROGRAMS =
LDADD=-lBBS -lsystem -L../libBBS -L../libsystem
AM_CFLAGS= -I$(top_srcdir)/src
CLEANFILES=@EXTRA_CLEAN@
请问这个-L../libBBS是不是你说的链接?
【 在 fancyrabbit (fancy★一摩尔时光) 的大作中提到: 】
: 没链接libBBS
--
FROM 113.68.17.*
暂时将getbnum改为getbnum_safe(按src/func.h的定义)。编译通过了。还不知道
有没有问题。
【 在 tolly (你@我) 的大作中提到: 】
: 谢谢指点,编译还是出错...
: [Compiling gen_title.c]
: gen_title.c: In function 'generate_board_title':
: ...................
--
FROM 113.68.23.*
//已经改用getboardnum了,还是出错
//gen_title.c出错信息如下:
gen_title.c: In function 'generate_board_title':
gen_title.c:42: warning: passing argument 4 of 'safe_mmapfile_handle'
from incompatib
le pointer type
gen_title.c:106: error: too few arguments to function 'getboardnum'
gen_title.c:108: error: too few arguments to function 'getboardnum'
*** Error code 1
老大,这个也不行啊。
//func.h中定义如下:
int getboardnum(const char *bname, struct boardheader *bh);
//gen_title.c中使用:
bs=getbstatus(getboardnum(bh->filename));
set_board(getboardnum(bh->filename), &btmp, NULL);
//chlevel.c出错信息如下:
chlevel.c:7: warning: return type defaults to 'int'
chlevel.c: In function 'main':
chlevel.c:79: error: too few arguments to function 'substitute_record'
chlevel.c:83: warning: control reaches end of non-void function
//func.h中定义如下:
int substitute_record(char *filename, void *rptr, int size, int id,
RECORD_FUNC_ARG filecheck, void *arg);
//chlevel.c中使用:
substitute_record(BBSHOME "/.PASSWDS", &user, sizeof(user), i);
请fancy大大指点,谢谢!!
【 在 fancyrabbit (fancy★一摩尔时光) 的大作中提到: 】
: 哦,应该不是这个原因。getbnum()没有了应该是。
: 用 getboardnum() 吧
--
修改:tolly FROM 113.68.23.*
FROM 113.68.23.*
终于改好了可以编译了,可是,转换.PASSWDS文件的时候,明显有问题啊。
我对过fb2kstruct.h和convpasswd.c的olduserec和原来的struct.h定义一致啊,请问还有
其它什么地方可能会导致这种情况出现呢?
's home directory not found.
Creating it.
Tranfering ?隑219.137.53 ....
Warning: ?隑219.137.53.91's home directory not found.
Creating it.
Tranfering ....
Warning: 's home directory not found.
Creating it.
Tranfering ....
Warning: 's home directory not found.
Creating it.
Tranfering 飃耍 ....
Warning: 嘁胪ü耍墒...
back# ./convpasswd
Tranfering SYSOP ....
Tranfering ;asfgja ....
Warning: ;asfgja's home directory not found.
Creating it.
Tranfering
【 在 fancyrabbit (fancy★一摩尔时光) 的大作中提到: 】
: 第二个参数简单传个NULL进去就行了.....
: substitute_record原型改了,后边加俩NULL
: 好吧回头找时间把 contrib/ 再扫一遍- - @jiangjun2000
: ...................
--
修改:tolly FROM 113.68.23.*
FROM 113.68.23.*