- 主题:phplib和telnet公用的函数放在哪里
rt
我新写了一个函数,web和telnet下都要用,不知道应该放在哪个现成的文件中。
我现在系统是enable-site=aaa,然后将一个新函数foo写到site/aaa.c,结果发现修改完aaa.c之后,make的时候phplib的so文件没有重新编译,所以用web访问的时候会出错:
/usr/sbin/apache: symbol lookup error: /usr/lib/php4/libexec/libphpbbslib.so: undefined symbol: foo
奇怪的是,同样的configure配置,一个站点web访问正常,另外一个站点出现上面的错误,不知道该怎么解决
--
FROM 222.171.7.*
放在libBBS里
【 在 luckwithme (Marvel) 的大作中提到: 】
: rt
: 我新写了一个函数,web和telnet下都要用,不知道应该放在哪个现成的文件中。
: 我现在系统是enable-site=aaa,然后将一个新函数foo写到site/aaa.c,结果发现修改完aaa.c之后,make的时候phplib的so文件没有重新编译,所以用web访问的时候会出错:
: ...................
--
FROM 59.66.211.*
site.c也在libBBS里吧,我估计他.h里没加声明 ...
【 在 pig2532 (猪猪猪) 的大作中提到: 】
: 放在libBBS里
--
FROM 61.149.137.*
你说是site.h加foo的声明吗?
我在libphpbbslib.so能够找到foo的字符串,但是还是有那个undefine的错误
【 在 fancyrabbit (兔兔猫★Initial F★Changing ...) 的大作中提到: 】
: site.c也在libBBS里吧,我估计他.h里没加声明 ...
--
FROM 222.171.7.*
func.h?
【 在 luckwithme (Marvel) 的大作中提到: 】
: 你说是site.h加foo的声明吗?
: 我在libphpbbslib.so能够找到foo的字符串,但是还是有那个undefine的错误
--
FROM 221.192.237.*
这个需要加吗,我编译的时候没有问题的...
我在phpbbs.user.c和src/talk.c中这么修改的:
#ifdef FOO
void foo();
#endif
...
...
#ifdef FOO
foo();
#endif
然后在site/aaa.c中:
#ifdef FOO
void foo()
{
...
}
#endif
site/aaa.h:
#define FOO
【 在 foxban (未毕业的码农) 的大作中提到: 】
: func.h?
--
修改:luckwithme FROM 222.171.7.*
FROM 222.171.7.*
现在很弱的解决办法就是在phpbbs.user.c中再加一个foo函数完整的定义,但是太e了……
【 在 luckwithme (Marvel) 的大作中提到: 】
: 这个需要加吗,我编译的时候没有问题的...
: 我在phpbbs.user.c和src/talk.c中这么修改的:
: #ifdef FOO
: ...................
--
FROM 222.171.7.*
把你完整的修改贴出来,上面贴的这个你根本没有在phpbbs.user.c里面调用foo阿
【 在 luckwithme (Marvel) 的大作中提到: 】
: 现在很弱的解决办法就是在phpbbs.user.c中再加一个foo函数完整的定义,但是太e了……
--
FROM 128.12.150.*
#ifdef FOO
void foo();
#endif
...
...
#ifdef FOO
foo();
~~~~~~~这个就是调用……
#endif
问题是一台机器上没问题,另一台机器有问题,make clean之后还是不行。
现在就是在phpbbs.user.c中添加foo代码,或者定义和声明写到a.c/h文件,然后include a.h
【 在 atppp (Big Mouse) 的大作中提到: 】
: 把你完整的修改贴出来,上面贴的这个你根本没有在phpbbs.user.c里面调用foo阿
--
FROM 222.171.7.*
你源代码 libBBS/ 目录由没有 make install?
【 在 luckwithme (Marvel) 的大作中提到: 】
: #ifdef FOO
: void foo();
: #endif
: ...................
--
FROM 128.12.150.*