You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@perl.apache.org by Alessandro Forghieri <al...@orion.it> on 2002/04/19 11:02:20 UTC

[Win32] errors in modperl2 build w/ bleedperl (5.7.3)

Greetings.

Building as per the subject results with VC6 in a large number of syntax
errors:
	cl -ID:/builds/modperl-2.0/src/modules/perl -ID:/builds/modperl-
2.0/xs -ID:\Apache2/include -nologo -Gf -W3 -O1 -MD -DNDEBUG -DWIN32 -
D_CONSOLE -DNO_STRICT -DHAVE_DES_FCRYPT  -DPERL_IMPLICIT_CONTEXT -
DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCRT_READFIX  -
I"D:\bleedperl\lib\CORE" -DMOD_PERL -O1 -MD -DNDEBUG   -c mod_perl.c &&
D:\bleedperl\bin\perl.exe -ID:\bleedperl\lib -ID:\bleedperl\lib -
MExtUtils::Command -e mv mod_perl.obj mod_perl.lo
mod_perl.c
D:\bleedperl\lib\CORE\win32.h(374) : error C2143: syntax error : missing ')'
before '*'
D:\bleedperl\lib\CORE\win32.h(374) : error C2143: syntax error : missing '{'
before '*'
D:\bleedperl\lib\CORE\win32.h(374) : error C2059: syntax error : ')'
D:\bleedperl\lib\CORE\win32.h(394) : error C2061: syntax error :
identifier 'Sighandler_t'
[...]

These can be cured by including config.h before win32.h, but the problem
then moves to perlio.h and then to perliol.h... The rather outlandish error
messages are generated by statements like:

typedef foo bar;

where foo is an unknown symbol (for instance in win32.h Signal_t  is unknown,
as it is defined in config.h)

I am using the latest CVS snapshot of modperl.

As for bleedperl:

perl -V
Summary of my perl5 (revision 5 undef) configuration:
  Platform:
    osname=MSWin32, osvers=4.0, archname=MSWin32-x86-multi-thread
    uname=''
    config_args='undef'
    hint=recommended, useposix=true, d_sigaction=undef
    usethreads=undef use5005threads=undef useithreads=define
usemultiplicity=define
    useperlio=define d_sfio=undef uselargefiles=undef usesocks=undef
    use64bitint=undef use64bitall=undef uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='cl', ccflags ='-nologo -Gf -W3 -O1 -MD -DNDEBUG -DWIN32 -
D_CONSOLE -DNO_STRICT -DHAVE_DES_FCRYPT  -DPERL_IMPLICIT_CONTEXT -
DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCRT_READFIX',
    optimize='-O1 -MD -DNDEBUG',
    cppflags='-DWIN32'
    ccversion='undef', gccversion='', gccosandvers='undef'
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
    d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=10
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
    lseeksize=4    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='link', ldflags ='-nologo -nodefaultlib -release  -
libpath:"D:\bleedperl\lib\CORE"  -machine:x86'
    libpth=MSVCDir=C:\PROGRA~1\MICROS~4\VC98\lib
    libs=  oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib 
    comdlg32.libadvapi32.lib shell32.lib ole32.lib oleaut32.lib  netapi32.lib uuid.lib
wsock32.libmpr.lib winmm.lib  version.lib odbc32.lib odbccp32.lib msvcrt.lib
    perllibs=undef
    libc=msvcrt.lib, so=dll, useshrplib=yes, libperl=perl57.lib
  Dynamic Linking:
    dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
    cccdlflags=' ', lddlflags='-dll -nologo -nodefaultlib -release  -
libpath:"D:\bleedperl\lib\CORE"  -machine:x86'


Characteristics of this binary (from libperl):
  Compile-time options: MULTIPLICITY USE_ITHREADS
PERL_IMPLICIT_CONTEXT PERL_IMPLICIT_SYS
  Built under MSWin32
  Compiled at Apr 18 2002 15:34:08
  @INC:
    D:/bleedperl/lib
    D:/bleedperl/site/lib
    .

Cheers,
alf






---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: [Win32] mod_perl-2 test configuration

Posted by Randy Kobes <ra...@theoryx5.uwinnipeg.ca>.
On Mon, 20 May 2002, Doug MacEachern wrote:

> On Sat, 20 Apr 2002, Randy Kobes wrote:
>
> > On Sat, 20 Apr 2002, Randy Kobes wrote:
> >
> > > Hi,
> > >    I was having problems on Win32 when building mod_perl-2 (with
> > > the latest cvs modperl-2/httpd-2 sources) with the generated
> > > t/conf/httpd.conf - some needed modules weren't being loaded (eg,
> > > log_config_module, for the TransferLog directive), and also the
> > > file specifying the TypesConfig directive was getting mangled
> > > when substituting for @ServerRoot@. The following diff fixes
> > > those problems (this is on ActivePerl 631, with WinXP).
>
> randy, is this still an issue?

No, it went away, for some reason ... It may be something
changed since then, or I had been playing with my httpd.conf
that broke something ... But I just tried it with a clean
install, and it was fine. Thanks.

best regards,
randy


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: [Win32] mod_perl-2 test configuration

Posted by Doug MacEachern <do...@covalent.net>.
On Sat, 20 Apr 2002, Randy Kobes wrote:

> On Sat, 20 Apr 2002, Randy Kobes wrote:
> 
> > Hi,
> >    I was having problems on Win32 when building mod_perl-2 (with
> > the latest cvs modperl-2/httpd-2 sources) with the generated
> > t/conf/httpd.conf - some needed modules weren't being loaded (eg,
> > log_config_module, for the TransferLog directive), and also the
> > file specifying the TypesConfig directive was getting mangled
> > when substituting for @ServerRoot@. The following diff fixes
> > those problems (this is on ActivePerl 631, with WinXP).

randy, is this still an issue?
 
> +    return catfile $self->{httpd_basedir}, $file if (WIN32);
> +
>      $base ||= $self->{inherit_config}->{ServerRoot};

what was the value of $self->{inherit_config}->{ServerRoot}, empty or ?



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: [Win32] mod_perl-2 test configuration

Posted by Randy Kobes <ra...@theoryx5.uwinnipeg.ca>.
On Sat, 20 Apr 2002, Randy Kobes wrote:

> Hi,
>    I was having problems on Win32 when building mod_perl-2 (with
> the latest cvs modperl-2/httpd-2 sources) with the generated
> t/conf/httpd.conf - some needed modules weren't being loaded (eg,
> log_config_module, for the TransferLog directive), and also the
> file specifying the TypesConfig directive was getting mangled
> when substituting for @ServerRoot@. The following diff fixes
> those problems (this is on ActivePerl 631, with WinXP).

Actually, here's a simpler version:

=====================================================================
Index: Apache-Test/lib/Apache/TestConfigParse.pm
===================================================================
RCS file: /home/cvspublic/httpd-test/perl-framework/Apache-Test/lib/Apache/TestConfigParse.pm,v
retrieving revision 1.22
diff -u -r1.22 TestConfigParse.pm
--- Apache-Test/lib/Apache/TestConfigParse.pm	7 Apr 2002 04:18:02 -0000	1.22
+++ Apache-Test/lib/Apache/TestConfigParse.pm	20 Apr 2002 05:28:52 -0000
@@ -47,6 +47,8 @@
 sub server_file_rel2abs {
     my($self, $file, $base) = @_;

+    return catfile $self->{httpd_basedir}, $file if (WIN32);
+
     $base ||= $self->{inherit_config}->{ServerRoot};

     unless ($base) {

==================================================================

best regards,
randy


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


[Win32] mod_perl-2 test configuration

Posted by Randy Kobes <ra...@theoryx5.uwinnipeg.ca>.
Hi,
   I was having problems on Win32 when building mod_perl-2 (with
the latest cvs modperl-2/httpd-2 sources) with the generated
t/conf/httpd.conf - some needed modules weren't being loaded (eg,
log_config_module, for the TransferLog directive), and also the
file specifying the TypesConfig directive was getting mangled
when substituting for @ServerRoot@. The following diff fixes
those problems (this is on ActivePerl 631, with WinXP).

best regards,
randy

===================================================

Index: Apache-Test/lib/Apache/TestConfigParse.pm
===================================================================
RCS file: /home/cvspublic/httpd-test/perl-framework/Apache-Test/lib/Apache/TestConfigParse.pm,v
retrieving revision 1.22
diff -u -r1.22 TestConfigParse.pm
--- Apache-Test/lib/Apache/TestConfigParse.pm	7 Apr 2002 04:18:02 -0000	1.22
+++ Apache-Test/lib/Apache/TestConfigParse.pm	20 Apr 2002 05:05:33 -0000
@@ -47,6 +47,10 @@
 sub server_file_rel2abs {
     my($self, $file, $base) = @_;

+    if (WIN32) {
+      return catfile $self->{httpd_basedir}, $file;
+    }
+
     $base ||= $self->{inherit_config}->{ServerRoot};

     unless ($base) {
@@ -90,7 +94,8 @@

     for my $args (@{ $c->{$directive} }) {
         my $modname = $args->[0];
-        my $file = $self->server_file_rel2abs($args->[1]);
+        my $file = WIN32 ? catfile $self->{httpd_basedir}, $args->[1] :
+	  $self->server_file_rel2abs($args->[1]);

         unless (-e $file) {
             debug "$file does not exist, skipping LoadModule";

=====================================================================



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: [Win32] errors in modperl2 build w/ bleedperl (5.7.3)

Posted by Doug MacEachern <do...@covalent.net>.
On Fri, 19 Apr 2002, Alessandro Forghieri wrote:

the cvs version of modperl compiles w/ bleedperl on win32 as of a week or 
two ago.  bleedperl has many ithread fixes/improvements over 5.6.1, 
looking forward to 5.8.x becoming stable.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: [Win32] errors in modperl2 build w/ bleedperl (5.7.3)

Posted by Alessandro Forghieri <al...@orion.it>.
Greetings.
I partially solved the issue by commenting lines 13-14 of
modperl_apache_includes.h reading:

/* #   include <win32.h>
#   include <win32iop.h> */

This gets rid of the syntax errors and modperl compiles cleanly.

The link cannot be closed, however: it ends with a smattering of undefined
symbols. The apparent reason is that system libraries
($Config::Config{libs})donot get appended to the link line, since unresolved symbols are things
like exit,strcmp that should live in the C runtime lib.

This is possibly an issue with ExtUtils::Makemakerr in bleedperl itself (I
had topatch libwin32 for the same reason) or maybe with Apache::Build, or both...

Ideas on where to go from here?

Cheers,
alf





---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org