nginx make error, when --with-http_perl_module

Maxim Dounin mdounin at mdounin.ru
Wed Jun 24 04:04:17 MSD 2009


Hello!

On Tue, Jun 23, 2009 at 03:24:20AM -0400, lankelan wrote:

> 
> #./configure --user=elove --group=elove --prefix=/home/elove/app/nginx --with-http_stub_status_module --with-http_ssl_module --with-openssl=/home/elove/openssl-0.9.8c --with-http_perl_module --with-perl=/usr/bin/perl --with-perl_modules_path=/home/elove/app/nginx/modules/perl/

[...]

> gcc -c  -I ../../../../../src/core -I ../../../../../src/event -I ../../../../../src/os/unix -I ../../../../../src/http -I ../../../../../src/http/modules -I ../../../../../src/http/modules/perl -I ../../../../../objs  -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -I/usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE -g  -O   -DVERSION=\"0.7.60\" -DXS_VERSION=\"0.7.60\" -fPIC "-I/usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE"   nginx.c
> In file included from ../../../../../src/core/ngx_core.h:70,
>                  from nginx.xs:10:
> ../../../../../src/event/ngx_event_openssl.h:14:25: error: openssl/ssl.h: No such file or directory
> ../../../../../src/event/ngx_event_openssl.h:15:25: error: openssl/err.h: No such file or directory
> In file included from ../../../../../src/core/ngx_core.h:70,
>                  from nginx.xs:10:
> ../../../../../src/event/ngx_event_openssl.h:31: error: expected specifier-qualifier-list before 鈥楽SL_CTX鈥?
> ../../../../../src/event/ngx_event_openssl.h:37: error: expected specifier-qualifier-list before 鈥楽SL鈥?
> ../../../../../src/event/ngx_event_openssl.h:110: error: expected 鈥?鈥?before 鈥?鈥?token
> ../../../../../src/event/ngx_event_openssl.h:111: error: expected declaration specifiers or 鈥?..鈥?before 鈥楽SL_SESSION鈥?
> In file included from ../../../../../src/http/ngx_http.h:30,
>                  from nginx.xs:11:
> ../../../../../src/http/ngx_http_upstream_round_robin.h:33: error: expected specifier-qualifier-list before 鈥楽SL_SESSION鈥?
> make[2]: ***  Error 1
> make[2]: Leaving directory `/home/elove/nginx-0.7.60/objs/src/http/modules/perl'
> make[1]: ***  Error 2
> make[1]: Leaving directory `/home/elove/nginx-0.7.60'
> make: ***  Error 2

Try the attached patch.

Maxim Dounin
-------------- next part --------------
diff --git a/auto/lib/perl/make b/auto/lib/perl/make
--- a/auto/lib/perl/make
+++ b/auto/lib/perl/make
@@ -27,6 +27,7 @@ cat << END                              
 		&& NGX_PM_CFLAGS="\$(NGX_PM_CFLAGS) -g $NGX_CC_OPT"	\
 			NGX_PCRE=$PCRE					\
 			NGX_OBJS=$NGX_OBJS				\
+			NGX_OPENSSL=$OPENSSL				\
 		$NGX_PERL Makefile.PL					\
 			LIB=$NGX_PERL_MODULES				\
 			INSTALLSITEMAN3DIR=$NGX_PERL_MODULES_MAN
diff --git a/src/http/modules/perl/Makefile.PL b/src/http/modules/perl/Makefile.PL
--- a/src/http/modules/perl/Makefile.PL
+++ b/src/http/modules/perl/Makefile.PL
@@ -24,7 +24,12 @@ WriteMakefile(
                          "-I ../../../../../$ENV{NGX_OBJS} " .
                          ($ENV{NGX_PCRE} =~ /^(YES|NO)/ ? "" :
                              ($ENV{NGX_PCRE} =~ m#^/# ? "-I $ENV{NGX_PCRE} " :
-                                  "-I ../../../../../$ENV{NGX_PCRE} ")),
+                                  "-I ../../../../../$ENV{NGX_PCRE} ")) .
+                         ($ENV{NGX_OPENSSL} =~ /^(YES|NO)/ ? "" :
+                             ($ENV{NGX_OPENSSL} =~ m#^/# ?
+                                  "-I $ENV{NGX_OPENSSL}/openssl/include " :
+                      "-I ../../../../../$ENV{NGX_OPENSSL}/openssl/include ")),
+
 
     depend => {
         'nginx.c'     =>


More information about the nginx mailing list