You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Bolhar-Nordenkampf Ferdinand <bo...@adv.magwien.gv.at> on 2006/11/21 15:09:50 UTC
mod_perl 2.0.2 fails to build on Tru64 (Digital UNIX)
Hi,
I'm trying to build mod_perl 2.0.2 on a Tru64 (Digital UNIX) system V5.1B,
Apache 2.0.59, Perl 5.8.0.
After extracting the .tar file, I do a
$ cd mod_perl-2.0.2
$ perl Makefile.PL MP_APXS=/usr/local/apache2/bin/apxs
And I got this output:
Reading Makefile.PL args from @ARGV
MP_APXS = /usr/local/apache2/bin/apxs
no conflicting prior mod_perl version found - good.
Configuring Apache/2.0.59 mod_perl2/2.0.2 Perl/v5.8.0
Subroutine ModPerl::ParseSource::get_structs redefined at lib/ModPerl/ParseSource.pm line 59.
Subroutine new redefined at lib/Apache2/BuildConfig.pm line 18.
WARNING: NO_META is not a known parameter.
'NO_META' is not a known MakeMaker parameter name.
[ info] generating script t/TEST
[ info] generating script ./t/cgi-bin/cookies.pl
WARNING: NO_META is not a known parameter.
Writing Makefile for Apache::Test
Checking for File::Spec...ok
Checking for Cwd...ok
[ info] generating script t/TEST
Argument "" isn't numeric in numeric lt (<) at /usr/lib/perl-5.8.0/lib/5.8.0/ExtUtils/MakeMaker.pm line 434.
Writing Makefile for ModPerl::Registry
Writing Makefile for APR::Base64
Writing Makefile for APR::Brigade
Writing Makefile for APR::Bucket
Writing Makefile for APR::BucketAlloc
Writing Makefile for APR::BucketType
Writing Makefile for APR::Date
Writing Makefile for APR::Error
Writing Makefile for APR::Finfo
Writing Makefile for APR::IpSubnet
Writing Makefile for APR::OS
Writing Makefile for APR::Pool
Writing Makefile for APR::SockAddr
Writing Makefile for APR::Socket
Writing Makefile for APR::Status
Writing Makefile for APR::String
Writing Makefile for APR::Table
Writing Makefile for APR::URI
Writing Makefile for APR::UUID
Writing Makefile for APR::Util
Writing Makefile for APR
Writing Makefile for Apache2::Access
Writing Makefile for Apache2::CmdParms
Writing Makefile for Apache2::Command
Writing Makefile for Apache2::Connection
Writing Makefile for Apache2::Directive
Writing Makefile for Apache2::Filter
Writing Makefile for Apache2::FilterRec
Writing Makefile for Apache2::HookRun
Writing Makefile for Apache2::Log
Writing Makefile for Apache2::MPM
Writing Makefile for Apache2::Module
Writing Makefile for Apache2::Process
Writing Makefile for Apache2::RequestIO
Writing Makefile for Apache2::RequestRec
Writing Makefile for Apache2::RequestUtil
Writing Makefile for Apache2::Response
Writing Makefile for Apache2::ServerRec
Writing Makefile for Apache2::ServerUtil
Writing Makefile for Apache2::SubProcess
Writing Makefile for Apache2::SubRequest
Writing Makefile for Apache2::URI
Writing Makefile for Apache2::Util
Writing Makefile for Apache2
Writing Makefile for ModPerl::Global
Writing Makefile for ModPerl::Util
Writing Makefile for ModPerl
Writing Makefile for ModPerl::WrapXS
Constant subroutine main::WIN32 redefined at /usr/lib/perl-5.8.0/lib/5.8.0/constant.pm line 108.
Constant subroutine main::BUILD_APREXT redefined at /usr/lib/perl-5.8.0/lib/5.8.0/constant.pm line 108.
Writing Makefile for APR
Writing Makefile for APR::Const
Writing Makefile for APR::PerlIO
Writing Makefile for libaprext
Writing Makefile for APR_build
Writing Makefile for Apache2::Const
Writing Makefile for Apache2_build
Subroutine MY::postamble redefined at ./Makefile.PL line 23.
Writing Makefile for ModPerl::Const
Writing Makefile for ModPerl
Writing Makefile for ModPerl::XS
Writing Makefile for mod_perl2
Use of uninitialized value in split at /usr/lib/perl-5.8.0/lib/5.8.0/ExtUtils/MM_Unix.pm line 1518.
Use of uninitialized value in split at /usr/lib/perl-5.8.0/lib/5.8.0/ExtUtils/MM_Unix.pm line 1523.
Use of uninitialized value in pattern match (m//) at /usr/lib/perl-5.8.0/lib/5.8.0/ExtUtils/MM_Unix.pm line 1533.
Use of uninitialized value in substitution (s///) at /usr/lib/perl-5.8.0/lib/5.8.0/ExtUtils/MM_Unix.pm line 1719.
Use of uninitialized value in concatenation (.) or string at /usr/lib/perl-5.8.0/lib/5.8.0/ExtUtils/MM_Unix.pm line 1738.
Use of uninitialized value in concatenation (.) or string at /usr/lib/perl-5.8.0/lib/5.8.0/ExtUtils/MM_Unix.pm line 1791.
[warning] mod_perl dso library will be built as mod_perl.so
[warning] You'll need to add the following to httpd.conf:
[warning]
[warning] LoadModule perl_module modules/mod_perl.so
[warning]
[warning] depending on your build, mod_perl might not live in
[warning] the modules/ directory.
[warning] Check the results of
[warning]
[warning] $ /www/bin/apxs -q LIBEXECDIR
[warning]
[warning] and adjust the LoadModule directective accordinlgy
$
Hm. Doesn't look very nice, doesn't it?
Anyway, I run "make" next, and I got this output:
cd "src/modules/perl" && make
cc -I/usr/users/bol/mod_perl-2.0.2/src/modules/perl -I/usr/users/bol/mod_perl-2.0.2/xs -I/usr/local/apache2/include
-I/usr/local/apache2/include -I/usr/local/apache2/include -fprm d -ieee -std -fprm d -ieee -DLANGUAGE_C
-I/usr/lib/perl-5.8.0/lib/5.8.0/alpha-dec_osf/CORE -DMOD_PERL -DMP_COMPAT_1X -DOSF1 -O4
-c mod_perl.c && mv mod_perl.o mod_perl.lo
cc: Warning: /usr/lib/perl-5.8.0/lib/5.8.0/alpha-dec_osf/CORE/config.h, line 41:
The redefinition of the macro "__attribute__" conflicts with a current definition because the spelling of one or more parameters is different. The redefinition is now in effect. (macroredef)
#define __attribute__(_arg_)
----------------------^
[ The above message gets repeated while compiling these files:
modperl_interp.c modperl_tipool.c modperl_config.c modperl_cmd.c
modperl_options.c modperl_callback.c modperl_handler.c modperl_gtop.c
modperl_util. modperl_io.c modperl_io_apache.c modperl_filter.c
modperl_bucket.c modperl_mgv.c modperl_pcw.c modperl_global.c
modperl_env.c modperl_cgi.c modperl_perl.c modperl_perl_global.c
modperl_pp.c modperl_sys.c modperl_module.c modperl_svptr_table.c
modperl_const.c modperl_constants.c modperl_apache_compat.c modperl_error.c
modperl_debug.c modperl_common_util.c modperl_common_log.c modperl_hooks.c
modperl_directives.c modperl_flags.c modperl_exports.c
In fact, the only files which are compiled without any message are:
modperl_log.c
modperl_xsinit.c
]
rm -f mod_perl.so
ld -shared -expect_unresolved "*" -O4 -msym -std -s mod_perl.lo modperl_interp.lo modperl_tipool.lo modperl_log.lo
modperl_config.lo modperl_cmd.lo modperl_options.lo modperl_callback.lo modperl_handler.lo modperl_gtop.lo
modperl_util.lo modperl_io.lo modperl_io_apache.lo modperl_filter.lo modperl_bucket.lo modperl_mgv.lo modperl_pcw.lo
modperl_global.lo modperl_env.lo modperl_cgi.lo modperl_perl.lo modperl_perl_global.lo modperl_perl_pp.lo modperl_sys.lo
modperl_module.lo modperl_svptr_table.lo modperl_const.lo modperl_constants.lo modperl_apache_compat.lo modperl_error.lo
modperl_debug.lo modperl_common_util.lo modperl_common_log.lo modperl_hooks.lo modperl_directives.lo modperl_flags.lo
modperl_xsinit.lo modperl_exports.lo -Wl,-rpath,/usr/lib/perl-5.8.0/lib/5.8.0/alpha-dec_osf/CORE
/usr/lib/perl-5.8.0/lib/5.8.0/alpha-dec_osf/auto/DynaLoader/DynaLoader.a
-L/usr/lib/perl-5.8.0/lib/5.8.0/alpha-dec_osf/CORE -lperl -lm -lutil -o mod_perl.so
ld:
Invalid flag usage: Wl,-rpath,/usr/lib/perl-5.8.0/lib/5.8.0/alpha-dec_osf/CORE,
-Wx,-option must appear after -_SYSTYPE_SVR4
ld: Usage: ld [options] file [...]
*** Exit 1
Stop.
*** Exit 1
Stop.
Exit 1
$
As suggested on http://perl.apache.org/docs/2.0/user/help/help.html#Reporting_Problems,
I run t/REPORT which provided this output:
-------------8<---------- Start Bug Report ------------8<----------
1. Problem Description:
>>> PLEASE SEE DESCRIPTION ABOVE <<<
2. Used Components and their Configuration:
*** mod_perl version 2.000002
*** using /usr/users/bol/mod_perl-2.0.2/lib/Apache2/BuildConfig.pm
*** Makefile.PL options:
MP_APR_LIB => aprext
MP_APXS => /usr/local/apache2/bin/apxs
MP_COMPAT_1X => 1
MP_GENERATE_XS => 1
MP_LIBNAME => mod_perl
MP_USE_DSO => 1
*** The httpd binary was not found
*** (apr|apu)-config linking info
-L/usr/local/apache2/lib -laprutil-0 -lexpat -liconv
-L/usr/local/apache2/lib -lapr-0 -lrt -lm -lresolv
*** /usr/lib/perl-5.8.0/bin/perl -V
Summary of my perl5 (revision 5.0 version 8 subversion 0) configuration:
Platform:
osname=dec_osf, osvers=5.1, archname=alpha-dec_osf
uname='osf1 zen.xko.dec.com t5.1 2617 alpha '
config_args='-des -Dlibpth=/usr/shlib /usr/lib /usr/ccs/lib -Dusemymalloc=no
-Dprefix=/usr/lib/perl-5.8.0 -Dman1dir=/usr/share/doclib/annex/man/man1
-Dman3dir=/usr/share/doclib/annex/man/man3 -Dccflags=-fprm d -ieee -Doptimize=-O4
-Dhostcat=cat /etc/hosts -Dmyhostname=localhost -Umydomain= -Dcf_by=perlhelp
-Dcf_email=root@localhost'
hint=recommended, useposix=true, d_sigaction=define
usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=define use64bitall=define uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='cc', ccflags ='-fprm d -ieee -std -fprm d -ieee -DLANGUAGE_C',
optimize='-O4',
cppflags='-fprm d -ieee -std -fprm d -ieee -DLANGUAGE_C'
ccversion='V6.5-011', gccversion='', gccosandvers=''
intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
alignbytes=8, prototype=define
Linker and Libraries:
ld='ld', ldflags =''
libpth=/usr/shlib /usr/lib /usr/ccs/lib
libs=-ldbm -ldb -lm -lutil
perllibs=-lm -lutil
libc=/usr/shlib/libc.so, so=so, useshrplib=true, libperl=libperl.so
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef,
ccdlflags=' -Wl,-rpath,/usr/lib/perl-5.8.0/lib/5.8.0/alphadec_osf/CORE'
cccdlflags=' ', lddlflags='-shared -expect_unresolved "*" -O4 -msym -std -s'
Characteristics of this binary (from libperl):
Compile-time options: USE_64_BIT_INT USE_64_BIT_ALL USE_LARGE_FILES
Built under dec_osf
Compiled at Aug 26 2002 18:28:54
%ENV:
PERL_LWP_USE_HTTP_10="1"
@INC:
/usr/lib/perl-5.8.0/lib/5.8.0/alpha-dec_osf
/usr/lib/perl-5.8.0/lib/5.8.0
/usr/lib/perl-5.8.0/lib/site_perl/5.8.0/alpha-dec_osf
/usr/lib/perl-5.8.0/lib/site_perl/5.8.0
/usr/lib/perl-5.8.0/lib/site_perl
.
** Packages of interest status:
Apache2 : -
Apache2::Request : -
CGI : 2.81
ExtUtils::MakeMaker: 6.03
LWP : -
mod_perl : -
mod_perl2 : -
3. This is the core dump trace: (if you get a core dump):
>>> NO CORE DUMP <<<
This report was generated by t/REPORT on Tue Nov 21 13:10:59 2006 GMT.
-------------8<---------- End Bug Report --------------8<----------
Can you help me? What's wrong here?
Kind greetings from Vienna,
Ferry
--
Ing. Ferry Bolhár-Nordenkampf
Magistrat der Stadt Wien - MA 14
A-1010 Wien
E-Mail: bol@adv.magwien.gv.at
Re: mod_perl 2.0.2 fails to build on Tru64 (Digital UNIX)
Posted by "Philip M. Gollucci" <pg...@p6m7g8.com>.
Bolhar-Nordenkampf Ferdinand wrote:
> Hi,
>
> I'm trying to build mod_perl 2.0.2 on a Tru64 (Digital UNIX) system V5.1B,
> Apache 2.0.59, Perl 5.8.0.
You knew I as going to say this, but preferably 5.8.8.
Make sure you are using the same compiler for mod_perl as you used for
perl and httpd 2.059.
$CC -v ?
> Subroutine ModPerl::ParseSource::get_structs redefined at lib/ModPerl/ParseSource.pm line 59.
> Subroutine new redefined at lib/Apache2/BuildConfig.pm line 18.
> WARNING: NO_META is not a known parameter.
> 'NO_META' is not a known MakeMaker parameter name.
> [ info] generating script t/TEST
> [ info] generating script ./t/cgi-bin/cookies.pl
> WARNING: NO_META is not a known parameter.
> Argument "" isn't numeric in numeric lt (<) at /usr/lib/perl-5.8.0/lib/5.8.0/ExtUtils/MakeMaker.pm line 434.
> Constant subroutine main::WIN32 redefined at /usr/lib/perl-5.8.0/lib/5.8.0/constant.pm line 108.
> Constant subroutine main::BUILD_APREXT redefined at /usr/lib/perl-5.8.0/lib/5.8.0/constant.pm line 108.
This all probably relating to the versions of Modules that ship with
perl 5.8.0.
> cc: Warning: /usr/lib/perl-5.8.0/lib/5.8.0/alpha-dec_osf/CORE/config.h, line 41:
> The redefinition of the macro "__attribute__" conflicts with a current definition because the spelling of one or more parameters is different. The redefinition is now in effect. (macroredef)
> #define __attribute__(_arg_)
Thats a perl error message. You're compiler is not the same one as was
used for perl.
> Invalid flag usage: Wl,-rpath,/usr/lib/perl-5.8.0/lib/5.8.0/alpha-dec_osf/CORE,
> -Wx,-option must appear after -_SYSTYPE_SVR4
> ld: Usage: ld [options] file [...]
Fix the above first.
Thats the default Tru64 compiler. /Me thins you tried GCC for mod_perl.
> cc='cc', ccflags ='-fprm d -ieee -std -fprm d -ieee -DLANGUAGE_C',
> optimize='-O4',
> cppflags='-fprm d -ieee -std -fprm d -ieee -DLANGUAGE_C'
> ccversion='V6.5-011', gccversion='', gccosandvers=''
> intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
> d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
> ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
> alignbytes=8, prototype=define
--
------------------------------------------------------------------------
Philip M. Gollucci (pgollucci@p6m7g8.com) 323.219.4708
Consultant / http://p6m7g8.net/Resume/resume.shtml
Senior Software Engineer - TicketMaster - http://ticketmaster.com
1024D/A79997FA F357 0FDD 2301 6296 690F 6A47 D55A 7172 A799 97F
I never had a dream come true
'Til the day that I found you.
Even though I pretend that I've moved on
You'll always be my baby.
I never found the words to say
You're the one I think about each day
And I know no matter where life takes me to
A part of me will always be...
A part of me will always be with you.