You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Doug MacEachern <do...@covalent.net> on 2000/12/22 06:45:09 UTC

Re: trouble compiling mod_perl-1.24_01

On Wed, 15 Nov 2000, Jere C. Julian, Jr. wrote:

> I'm on a FreeBSD 3.4-RELEASE box and I've just built and tested apache
> 1.3.14 from source.  Then I try to build mod_perl with the following
> commands and get the errors below.
...
> Symbol.xs:106: `na' undeclared (first use this function)
> Symbol.xs:106: (Each undeclared identifier is reported only once
> Symbol.xs:106: for each function it appears in.)

this is supposed to be taken care of in Symbol.xs:
#include "patchlevel.h" 
#if ((PATCHLEVEL >= 4) && (SUBVERSION >= 76)) || (PATCHLEVEL >= 5) 
#define na PL_na 
#endif 

which probably means you have a bogus patchlevel.h (from an old tcl
install) in /usr/local/include either delete that or move it aside.  the
right thing for Symbol.xs todo is not to use na at all, patch below.

Index: Symbol/Symbol.xs
===================================================================
RCS file: /home/cvs/modperl/Symbol/Symbol.xs,v
retrieving revision 1.4
diff -u -r1.4 Symbol.xs
--- Symbol/Symbol.xs	1998/11/24 19:10:56	1.4
+++ Symbol/Symbol.xs	2000/12/22 06:01:06
@@ -2,11 +2,6 @@
 #include "perl.h"
 #include "XSUB.h"
 
-#include "patchlevel.h" 
-#if ((PATCHLEVEL >= 4) && (SUBVERSION >= 76)) || (PATCHLEVEL >= 5) 
-#define na PL_na 
-#endif 
-
 #ifdef PERL_OBJECT
 #define sv_name(svp) svp
 #define undef(ref) 
@@ -102,8 +97,10 @@
 		mg_get(sv);
 		sym = SvPOKp(sv) ? SvPVX(sv) : Nullch;
 	    }
-	    else
-		sym = SvPV(sv, na);
+	    else {
+                STRLEN n_a;
+                sym = SvPV(sv, n_a);
+            }
 	    if(sym)
 		cv = perl_get_cv(sym, TRUE);
 	    break;