2012-05-09 3 views
0

для создания mod_caucho.so, я бегу смолы Configure, когда я выполнить команду сделать некоторые ошибки:apache2.4.2 + смолы 3.1.9

/home/xsmapp/temp/resin-3.1.9/>make 
(cd modules/c/src; make) 
make[1]: Entering directory `/home/xsmapp/temp/resin-3.1.9/modules/c/src' 
for dir in common apache2 resin resinssl resin_os; do (cd $dir; make); done 
make[2]: Entering directory `/home/xsmapp/temp/resin-3.1.9/modules/c/src/common' 
make[2]: Nothing to be done for `all'. 
make[2]: Leaving directory `/home/xsmapp/temp/resin-3.1.9/modules/c/src/common' 
make[2]: Entering directory `/home/xsmapp/temp/resin-3.1.9/modules/c/src/apache2' 
EGREP="/bin/grep -E" /home/xsmapp/temp/resin-3.1.9/libtool --silent --tag=CXX --mode=compile gcc -o mod_caucho.lo -c -I/home/xsmapp/appserver/apache-2.4.2/include -I/home/xsmapp/appserver/apr/include/apr-1 -DRESIN_HOME=\"/home/xsmapp/temp/resin-3.1.9\" -I../common -g -O2 -DPOLL -DEPOLL -D_POSIX_PTHREAD_SEMANTICS -DHAS_SOCK_TIMEOUT -DHAS_JVMTI -DHAS_JVMDI -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -g -O2 -pthread mod_caucho.c 
***mod_caucho.c: In function `write_env': 
mod_caucho.c:588: error: structure has no member named `remote_ip' 
mod_caucho.c:590: error: structure has no member named `remote_ip' 
mod_caucho.c:591: error: structure has no member named `remote_addr'*** 
mod_caucho.c: In function `caucho_request': 
mod_caucho.c:896: error: structure has no member named `remote_ip' 
make[2]: *** [mod_caucho.lo] 错误 1 
make[2]: Leaving directory `/home/xsmapp/temp/resin-3.1.9/modules/c/src/apache2' 

любая помощь будет оценен по достоинству!

+0

вы можете переформатировать свой код – Satya

ответ

0

Возможно, это проблема с версией. Смола 3.1. * Подходит для Apache2.2. , но не гарантия для новейшего Apache2.4.

Я использовал Apache 2.2.22 + Resin3.1.8, и все в порядке.

0

спасибо hongtium. Мне нужно найти способ для компиляции.

vi resin-3.1.9\modules\c\src\apache2\mod_caucho.c

в строке 588 /*

if (c->remote_host) 
    cse_write_string(s, CSE_REMOTE_HOST, c->remote_host); 
    else 
    cse_write_string(s, CSE_REMOTE_HOST, c->remote_ip); 

    cse_write_string(s, CSE_REMOTE_ADDR, c->remote_ip); 
    sprintf(buf, "%u", ntohs(c->remote_addr->port)); 

*/

на линии 856 //ip = r->connection->remote_ip;

тогда, вы можете create mod_caucho.so