|
List Info
Thread: embedded Perl (5.8.2) build problems on AIX 5.3
|
|
| embedded Perl (5.8.2) build problems on
AIX 5.3 |

|
2007-05-30 03:29:48 |
Over at The Net-SNMP Project, we're suffering from build
problems when
using embedded Perl on AIX 5.3 with the OS-supplied Perl
5.8.2 and the
IBM C compiler:
/usr/vac/bin/xlc -I../include
-I/home/anders/src/net-snmp-5.4svn/include -I.
-I../agent -I/home/anders/src/net-snmp-5.4svn/agent
-I../agent/mibgroup
-I/home/anders/src/net-snmp-5.4svn/agent/mibgroup
-I../snmplib
-I/home/anders/src/net-snmp-5.4svn/snmplib
-I/my/libopenssl097/include
-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE
-qmaxmem=16384 -qnoansialias
-DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT -q32 -D_LARGE_FILES
-qlonglong
-I/usr/opt/perl5/lib/5.8.2/aix-thread-multi/CORE
-DNETSNMP_ENABLE_IPV6
-O2 -qro
-qroconst -qmaxmem=-1 -qarch=ppc -Daix5=aix5 -c
/home/anders/src/net-snmp-5.4svn/agent/snmp_perl.c -DPIC
-o
.libs/snmp_perl.o
"/usr/opt/perl5/lib/5.8.2/aix-thread-multi/CORE/reentr.
h", line 619.16:
1506-007
(S) "struct drand48_data" is undefined.
"/usr/opt/perl5/lib/5.8.2/aix-thread-multi/CORE/reentr.
h", line 727.16:
1506-007
(S) "struct random_data" is undefined.
"/usr/opt/perl5/lib/5.8.2/aix-thread-multi/CORE/reentr.
h", line 775.16:
1506-007
(S) "struct random_data" is undefined.
"/home/anders/src/net-snmp-5.4svn/agent/snmp_perl.c&quo
t;, line 20.23: 1506-280
(W) Function argument assignment between types
"void(*)(struct
interpreter*,struct cv*)" and "void(*)(struct
cv*)" is not allowed.
"/home/anders/src/net-snmp-5.4svn/agent/snmp_perl.c&quo
t;, line 50.29: 1506-280
(W) Function argument assignment between types
"void(*)(struct
interpreter*)"
and "void(*)(void)" is not allowed.
gmake[1]: *** [snmp_perl.lo] Error 1
gmake[1]: Leaving directory
`/home/anders/build/5.4svn/agent'
The snmp_perl.c code is here:
http://net-snmp.svn.sourceforge.net/viewvc/net-snmp/trunk
/net-snmp/agent/snmp_perl.c?revision=15040&view=markup
a>
Further details can be found in the corresponding bug
report:
http://
sf.net/support/tracker.php?aid=1600099
Similar configurations build and work fine on at least
Linux, Solaris,
HP-UX and others with different versions of Perl.
Are there any known problems in this regard with the
system-supplied
Perl 5.8.2 on AIX 5.3?
Any thoughts on how to fix this? (We're ramping up for the
5.4.1 release
and like to get this resolved.)
Cheers,
+Thomas
--
Thomas Anders (thomas.anders at blue-cable.de)
Net-SNMP Project Core Developer -- http://www.net-snmp.org
Wanted: Perl Developer in Berlin/Germany
http://www.it-jobs.stepstone.de/it-jobs.cfm?id=648372
|
|
| Re: embedded Perl (5.8.2) build problems
on AIX 5.3 |

|
2007-05-30 03:38:06 |
On Wed, May 30, 2007 at 10:29:48AM +0200, Thomas Anders
wrote:
> Over at The Net-SNMP Project, we're suffering from
build problems when
> using embedded Perl on AIX 5.3 with the OS-supplied
Perl 5.8.2 and the
> IBM C compiler:
Well, one of its variants - xlc
> /usr/vac/bin/xlc -I../include
-I/home/anders/src/net-snmp-5.4svn/include -I.
> -I../agent -I/home/anders/src/net-snmp-5.4svn/agent
-I../agent/mibgroup
> -I/home/anders/src/net-snmp-5.4svn/agent/mibgroup
-I../snmplib
> -I/home/anders/src/net-snmp-5.4svn/snmplib
-I/my/libopenssl097/include
> -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE
-qmaxmem=16384 -qnoansialias
> -DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT -q32
-D_LARGE_FILES -qlonglong
> -I/usr/opt/perl5/lib/5.8.2/aix-thread-multi/CORE
-DNETSNMP_ENABLE_IPV6
> -O2 -qro
> -qroconst -qmaxmem=-1 -qarch=ppc -Daix5=aix5 -c
> /home/anders/src/net-snmp-5.4svn/agent/snmp_perl.c
-DPIC -o
> .libs/snmp_perl.o
>
"/usr/opt/perl5/lib/5.8.2/aix-thread-multi/CORE/reentr.
h", line 619.16:
> 1506-007
> (S) "struct drand48_data" is undefined.
>
"/usr/opt/perl5/lib/5.8.2/aix-thread-multi/CORE/reentr.
h", line 727.16:
> 1506-007
> (S) "struct random_data" is undefined.
>
"/usr/opt/perl5/lib/5.8.2/aix-thread-multi/CORE/reentr.
h", line 775.16:
> 1506-007
> (S) "struct random_data" is undefined.
>
"/home/anders/src/net-snmp-5.4svn/agent/snmp_perl.c&quo
t;, line 20.23: 1506-280
> (W) Function argument assignment between types
"void(*)(struct
> interpreter*,struct cv*)" and "void(*)(struct
cv*)" is not allowed.
>
"/home/anders/src/net-snmp-5.4svn/agent/snmp_perl.c&quo
t;, line 50.29: 1506-280
> (W) Function argument assignment between types
"void(*)(struct
> interpreter*)"
> and "void(*)(void)" is not allowed.
> gmake[1]: *** [snmp_perl.lo] Error 1
> gmake[1]: Leaving directory
`/home/anders/build/5.4svn/agent'
>
> The snmp_perl.c code is here:
>
> http://net-snmp.svn.sourceforge.net/viewvc/net-snmp/trunk
/net-snmp/agent/snmp_perl.c?revision=15040&view=markup
a>
>
> Further details can be found in the corresponding bug
report:
>
> http://
sf.net/support/tracker.php?aid=1600099
>
> Similar configurations build and work fine on at least
Linux, Solaris,
> HP-UX and others with different versions of Perl.
>
> Are there any known problems in this regard with the
system-supplied
> Perl 5.8.2 on AIX 5.3?
I'm not an expert on AIX, and it's 2 years since I've been
near it, but
a: could you send the output of perl -V for the system perl
b: is it compiled with cc_r ?
Nicholas Clark
|
|
| Re: embedded Perl (5.8.2) build problems
on AIX 5.3 |

|
2007-05-30 03:47:12 |
Nicholas Clark wrote:
> I'm not an expert on AIX, and it's 2 years since I've
been near it, but
>
> a: could you send the output of perl -V for the system
perl
It's in the bug report I've mentioned. From
http://
sf.net/support/tracker.php?aid=1600099 :
Summary of my perl5 (revision 5.0 version 8 subversion 2)
configuration:
Platform:
osname=aix, osvers=5.2.0.0, archname=aix-thread-multi
uname='aix animals 2 5 000709cf4c00 '
config_args=''
hint=previous, useposix=true, d_sigaction=define
usethreads=define use5005threads=undef
useithreads=define
usemultiplicity=define
useperlio=define d_sfio=undef uselargefiles=define
usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='cc_r', ccflags ='-D_ALL_SOURCE -D_ANSI_C_SOURCE
-D_POSIX_SOURCE
-qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN
-DNEED_PTHREAD_INIT
-q32 -D_LARGE_FILES -qlonglong',
optimize='-O',
cppflags='-D_ALL_SOURCE -D_ANSI_C_SOURCE
-D_POSIX_SOURCE
-qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN
-DNEED_PTHREAD_INIT
-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE
-qmaxmem=16384
-qnoansialias -DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT -q32
-D_LARGE_FILES -qlonglong -D_ALL_SOURCE -D_ANSI_C_SOURCE
-D_POSIX_SOURCE
-qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN
-DNEED_PTHREAD_INIT
-q32 -D_LARGE_FILES -qlonglong -D_ALL_SOURCE
-D_ANSI_C_SOURCE
-D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias
-DUSE_NATIVE_DLOPEN
-DNEED_PTHREAD_INIT -q32 -D_LARGE_FILES -qlonglong
-D_ALL_SOURCE
-D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384
-qnoansialias
-DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT -q32 -D_LARGE_FILES
-qlonglong
-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE
-qmaxmem=16384
-qnoansialias -DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT -q32
-D_LARGE_FILES -qlonglong -D_ALL_SOURCE -D_ANSI_C_SOURCE
-D_POSIX_SOURCE
-qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN
-DNEED_PTHREAD_INIT
-q32 -D_LARGE_FILES -qlonglong'
ccversion='5.0.2.0', gccversion='', gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8,
byteorder=4321
d_longlong=define, longlongsize=8, d_longdbl=define,
longdblsize=8
ivtype='long', ivsize=4, nvtype='double', nvsize=8,
Off_t='off_t',
lseeksize=8
alignbytes=8, prototype=define
Linker and Libraries:
ld='ld', ldflags =' -brtl -b32 -bmaxdata:0x80000000'
libpth=/lib /usr/lib /usr/ccs/lib
libs=-lbind -lnsl -ldbm -ldl -lld -lm -lpthreads -lc_r
-lcrypt -lbsd
-lPW
perllibs=-lbind -lnsl -ldl -lld -lm -lpthreads -lc_r
-lcrypt -lbsd -lPW
libc=/lib/libc.a, so=a, useshrplib=true,
libperl=libperl.a
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_aix.xs, dlext=so, d_dlsymun=undef,
ccdlflags='-bE:/usr/opt/perl5/lib/5.8.2/aix-thread-multi/COR
E/perl.exp
-bE:/usr/opt/perl5/lib/5.8.2/aix-thread-multi/CORE/perl.exp
-bE:/usr/opt/perl5/lib/5.8.2/aix-thread-multi/CORE/perl.exp
-bE:/usr/opt/perl5/lib/5.8.2/aix-thread-multi/CORE/perl.exp'
cccdlflags=' ', lddlflags='-bhalt:4 -bM:SRE
-bI:$(PERL_INC)/perl.exp
-bE:$(BASEEXT).exp -bnoentry -lpthreads -lc_r'
Characteristics of this binary (from libperl):
Compile-time options: MULTIPLICITY USE_ITHREADS
USE_LARGE_FILES
PERL_IMPLICIT_CONTEXT
Locally applied patches:
SUIDPERLIO1 - fix PERLIO_DEBUG buffer overflow
(CAN-2005-0156)
SPRINTF0 - fixes for sprintf formatting issues -
CVE-2005-3962
Built under aix
Compiled at Jan 26 2006 14:30:41
INC:
/usr/opt/perl5/lib/5.8.2/aix-thread-multi
/usr/opt/perl5/lib/5.8.2
/usr/opt/perl5/lib/site_perl/5.8.2/aix-thread-multi
/usr/opt/perl5/lib/site_perl/5.8.2
/usr/opt/perl5/lib/site_perl
.
> b: is it compiled with cc_r ?
I think so (see above).
+Thomas
--
Thomas Anders (thomas.anders at blue-cable.de)
Net-SNMP Project Core Developer -- http://www.net-snmp.org
Wanted: Perl Developer in Berlin/Germany
http://www.it-jobs.stepstone.de/it-jobs.cfm?id=648372
|
|
| Re: embedded Perl (5.8.2) build problems
on AIX 5.3 |

|
2007-05-30 03:53:32 |
On Wed, May 30, 2007 at 10:47:12AM +0200, Thomas Anders
wrote:
> It's in the bug report I've mentioned. From
> http://
sf.net/support/tracker.php?aid=1600099 :
Sorry, I missed that.
> > b: is it compiled with cc_r ?
>
> I think so (see above).
Yes. Thanks
I suspect that compiling against the system perl using xlc
isn't going to
work. xlc and cc_r behave sufficiently differently that the
aren't the same
compiler, even thought they're hardlinked to the same front
end driver
program. A patch I sent related to this was accepted for
ccache:
http://ccache.samba.org/
The latest release is ccache 2.4.
...
* fixed handling of hard-linked compilers on AIX
...
If the code really needs to compile with xlc, then Perl is
also going to have
to be compiled with xlc.
Nicholas Clark
|
|
| Re: embedded Perl (5.8.2) build problems
on AIX 5.3 |

|
2007-05-30 05:31:44 |
Nicholas Clark wrote:
> I suspect that compiling against the system perl using
xlc isn't going to
> work. xlc and cc_r behave sufficiently differently that
the aren't the same
> compiler, even thought they're hardlinked to the same
front end driver
> program.
That indeed seems to be the problem here.
I'll see whether we can come up with an appropriate
configure check.
Thanks for the suggestions.
+Thomas
--
Thomas Anders (thomas.anders at blue-cable.de)
Net-SNMP Project Core Developer -- http://www.net-snmp.org
Wanted: Perl Developer in Berlin/Germany
http://www.it-jobs.stepstone.de/it-jobs.cfm?id=648372
|
|
| Re: embedded Perl (5.8.2) build problems
on AIX 5.3 |

|
2007-05-30 05:42:09 |
On Wed, May 30, 2007 at 12:31:44PM +0200, Thomas Anders
wrote:
> Nicholas Clark wrote:
> > I suspect that compiling against the system perl
using xlc isn't going to
> > work. xlc and cc_r behave sufficiently differently
that the aren't the same
> > compiler, even thought they're hardlinked to the
same front end driver
> > program.
>
> That indeed seems to be the problem here.
> I'll see whether we can come up with an appropriate
configure check.
You might find the output of perl -V:cc and perl -V:ccname
helpful.
Also, see man perlrun and the entry on -V for how to tweak
the output.
(Not sure if all the features we now have were available
back in 5.8.2)
> Wanted: Perl Developer in Berlin/Germany
> http://www.it-jobs.stepstone.de/it-jobs.cfm?id=648372
That's not advertised on http://jobs.perl.org/ is
it?
Nicholas Clark
|
|
| Re: embedded Perl (5.8.2) build problems
on AIX 5.3 |

|
2007-05-30 05:56:01 |
On Wed, 30 May 2007 12:31:44 +0200, Thomas Anders
<thomas.anders blue-cable.de> wrote:
> Nicholas Clark wrote:
> > I suspect that compiling against the system perl
using xlc isn't going to
> > work. xlc and cc_r behave sufficiently differently
that the aren't the same
> > compiler, even thought they're hardlinked to the
same front end driver
> > program.
>
> That indeed seems to be the problem here.
> I'll see whether we can come up with an appropriate
configure check.
Not in Configure, but please look in hints/aix.sh
That already goes through a lot of trouble to detect what C
compiler is
installed and/or used. Warning: it is a snake pit on AIX. To
use rgs'
words: Hic sunt leones
> Thanks for the suggestions.
--
H.Merijn Brand Amsterdam Perl Mongers (http://amsterdam.pm.org/
)
using & porting perl 5.6.2, 5.8.x, 5.9.x on HP-UX
10.20, 11.00, 11.11,
& 11.23, SuSE 10.0 & 10.2, AIX 4.3 & 5.2, and
Cygwin. http://qa.perl.org
http://mirrors.de
velooper.com/hpux/ http://www.test-smoke.org
a>
http
://www.goldmark.org/jeff/stupid-disclaimers/
|
|
[1-7]
|
|