[rrd-users] Compiling RRD 1.2.23 AIX 5.3 with xlC v8 problems.
M.P.Leeuwen01 at rn.rabobank.nl
M.P.Leeuwen01 at rn.rabobank.nl
Wed Sep 19 10:08:54 CEST 2007
Hello,
I'm trying to get RRD 1.2.23 compiled under AIX 5.3.
I've followed the instructions in the doc/rrdbuilt.txt
Using the seperate build directory, installing the zLib (1.2.3), Libpng
1.2.20, Freetype 2.3.5, libart-lgpl 2.3.17.
After that I run the configure on rrd with the options: --disable-python
--disable-tcl --disable-ruby.
The configure runs fine but when I start the make, during the
compilation it crashes.
When I configure with the above and --enable-static --disable-phtread it
stops on the rrdcgi.c
rrd_cgi.c: In function 'main':
rrd_cgi.c:422: warning: format '%d' expects type 'int', but argument 2
has type 'size_t'
rrd_cgi.c: In function 'rrdcgiReadVariables':
rrd_cgi.c:1290: warning: comparison between signed and unsigned
/bin/sh ../libtool --tag=CC --mode=link gcc -O3
-fno-strict-aliasing -Wall -std=gnu99 -pedantic -Wshadow -Wpointer-arith
-Wcast-align -Wmissing-prototypes -Wmissing-declarations
-Wnested-externs -Winline -W -DPIC
-L/opt/rrd/data/source/buildir/lb/lib -o rrdcgi rrd_cgi.o librrd.la
gcc -O3 -fno-strict-aliasing -Wall -std=gnu99 -pedantic -Wshadow
-Wpointer-arith -Wcast-align -Wmissing-prototypes -Wmissing-declarations
-Wnested-externs -Winline -W -DPIC -o .libs/rrdcgi rrd_cgi.o
-L/opt/rrd/data/source/buildir/lb/lib -L./.libs -lrrd -lz -lm
-Wl,-blibpath:/usr/local/rrdtool/lib:/opt/rrd/data/source/buildir/lb/lib
:/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.0.0:/opt/freeware/lib/gc
c/powerpc-ibm-aix5.3.0.0/4.0.0/../../..:/usr/lib:/lib
ld: 0711-317 ERROR: Undefined symbol: .rrd_set_error
ld: 0711-317 ERROR: Undefined symbol: .parsetime
ld: 0711-317 ERROR: Undefined symbol: .proc_start_end
ld: 0711-317 ERROR: Undefined symbol: .readfile
ld: 0711-317 ERROR: Undefined symbol: .rrd_test_error
ld: 0711-317 ERROR: Undefined symbol: .rrd_get_error
ld: 0711-317 ERROR: Undefined symbol: .rrd_clear_error
ld: 0711-317 ERROR: Undefined symbol: .getopt_long
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more
information.
collect2: ld returned 8 exit status
make: 1254-004 The error code from the last command is 1.
Stop.
make: 1254-004 The error code from the last command is 1.
Stop.
make: 1254-004 The error code from the last command is 2.
I disabled the rrdcgi with the option --disable-rrdcgi
After that it stops at:
cd perl-shared && make
cp RRDs.pm blib/lib/RRDs.pm
cp ntmake.pl blib/lib/ntmake.pl
/usr/local/bin/perl -e 'use ExtUtils::Mksymlists;
Mksymlists("NAME" => "RRDs", "DL_FUNCS" => { }, "FUNCLIST" => [],
"DL_VARS" => []);'
/usr/local/bin/perl /usr/opt/perl5/lib/5.8.2/ExtUtils/xsubpp
-typemap /usr/opt/perl5/lib/5.8.2/ExtUtils/typemap RRDs.xs > RRDs.xsc
&& mv RRDs.xsc RRDs.c
cc_r -c -I../../src -D_ALL_SOURCE -D_ANSI_C_SOURCE
-D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN
-DNEED_PTHREAD_INIT -q32 -D_LARGE_FILES -qlonglong -O
-DVERSION=\"1.2023\" -DXS_VERSION=\"1.2023\"
"-I/usr/opt/perl5/lib/5.8.2/aix-thread-multi/CORE" -DPERLPATCHLEVEL=8
RRDs.c
Running Mkbootstrap for RRDs ()
chmod 644 RRDs.bs
rm -f blib/arch/auto/RRDs/RRDs.so
LD_RUN_PATH="" ld -bhalt:4 -bM:SRE
-bI:/usr/opt/perl5/lib/5.8.2/aix-thread-multi/CORE/perl.exp -bE:RRDs.exp
-bnoentry -lpthreads -lc_r RRDs.o -L../../src/.libs/
-Wl,-blibpath:/usr/local/rrdtool/lib -lrrd -lm -o
blib/arch/auto/RRDs/RRDs.so
ld: 0706-012 The -W flag is not recognized.
ld: 0706-006 Cannot find or open library file: -l
,-blibpath:/usr/local/rrdtool/lib
ld:open(): A file or directory in the path name does not exist.
make: 1254-004 The error code from the last command is 255
I've noticed that the -W option is parsed to LD. (At
Bindings/perl-shared)
When I remove the -w option from the Makefile the compilation continues.
BUT:
Making all in bindings
cd perl-piped && make
cd perl-shared && make
cc_r -c -I../../src -D_ALL_SOURCE -D_ANSI_C_SOURCE
-D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN
-DNEED_PTHREAD_INIT -q32 -D_LARGE_FILES -qlonglong -O
-DVERSION=\"1.2023\" -DXS_VERSION=\"1.2023\"
"-I/usr/opt/perl5/lib/5.8.2/aix-thread-multi/CORE" -DPERLPATCHLEVEL=8
RRDs.c
Running Mkbootstrap for RRDs ()
chmod 644 RRDs.bs
rm -f blib/arch/auto/RRDs/RRDs.so
LD_RUN_PATH="" ld -bhalt:4 -bM:SRE
-bI:/usr/opt/perl5/lib/5.8.2/aix-thread-multi/CORE/perl.exp -bE:RRDs.exp
-bnoentry -lpthreads -lc_r RRDs.o -L../../src/.libs/
-l,-blibpath:/usr/local/rrdtool/lib -lrrd -lm -o
blib/arch/auto/RRDs/RRDs.so
ld: 0706-006 Cannot find or open library file: -l
,-blibpath:/usr/local/rrdtool/lib
ld:open(): A file or directory in the path name does not exist.
make: 1254-004 The error code from the last command is 255.
Stops at the perl-shared.
I tried it with: --disable-python --disable-tcl --disable-ruby
--disable-rrdcgi also.
Then it stops, also at perl-shared and perl-piped.
After searching the google I found some extra settings:
export CC=/usr/vac/bin/cc
export PERLCC=$CC
I deleted the old source dir and unpacked the rrdtool.tar.
Run the ./configure with the same options: --disable-python
--disable-tcl --disable-ruby
But this time left the --disable-rrdcgi --enable-static
--disable-phtread out.
/usr/vac/bin/cc -O3 -DPIC -qfloat=nofold -o rrdupdate rrdupdate.o
-L/opt/rrd/data/source/buildir/lb/lib ./.libs/librrdupd.a -lm
source='rrd_cgi.c' object='rrd_cgi.o' libtool=no DEPDIR=.deps
depmode=aix /bin/sh ../depcomp /usr/vac/bin/cc -DHAVE_CONFIG_H -I. -I.
-I..
-DRRD_DEFAULT_FONT=\"/usr/local/rrdtool/share/rrdtool/fonts/DejaVuSansMo
no-Roman.ttf\" -DNUMVERS=1.2023
-I/opt/rrd/data/source/buildir/lb/include
-I/opt/rrd/data/source/buildir/lb/include/libart-2.0
-I/opt/rrd/data/source/buildir/lb/include/freetype2
-I/opt/rrd/data/source/buildir/lb/include/libpng -D_THREAD_SAFE
-I/usr/include/libart-2.0 -I/usr/include/freetype2 -O3 -DPIC
-qfloat=nofold -c rrd_cgi.c
/bin/sh ../libtool --tag=CC --mode=link /usr/vac/bin/cc -O3
-DPIC -qfloat=nofold -L/opt/rrd/data/source/buildir/lb/lib -o rrdcgi
rrd_cgi.o librrd.la
/usr/vac/bin/cc -O3 -DPIC -qfloat=nofold -o .libs/rrdcgi rrd_cgi.o
-L/opt/rrd/data/source/buildir/lb/lib -L./.libs -lrrd -lz -lm
-Wl,-blibpath:/usr/local/rrdtool/lib:/opt/rrd/data/source/buildir/lb/lib
:/usr/vac/lib:/usr/lib:/lib
ld: 0711-317 ERROR: Undefined symbol: .rrd_get_error
ld: 0711-317 ERROR: Undefined symbol: .rrd_clear_error
ld: 0711-317 ERROR: Undefined symbol: .rrd_test_error
ld: 0711-317 ERROR: Undefined symbol: .parsetime
ld: 0711-317 ERROR: Undefined symbol: .proc_start_end
ld: 0711-317 ERROR: Undefined symbol: .rrd_set_error
ld: 0711-317 ERROR: Undefined symbol: .getopt_long
ld: 0711-317 ERROR: Undefined symbol: .readfile
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more
information.
make: 1254-004 The error code from the last command is 8.
Tried again tistime disabling the rrdcgi.
cc RPATH=/usr/local/rrdtool/lib
Checking if your kit is complete...
Looks good
Writing Makefile for RRDs
cd perl-shared && make
cp RRDs.pm blib/lib/RRDs.pm
cp ntmake.pl blib/lib/ntmake.pl
/usr/local/bin/perl -e 'use ExtUtils::Mksymlists;
Mksymlists("NAME" => "RRDs", "DL_FUNCS" => { }, "FUNCLIST" => [],
"DL_VARS" => []);'
/usr/local/bin/perl /usr/opt/perl5/lib/5.8.2/ExtUtils/xsubpp
-typemap /usr/opt/perl5/lib/5.8.2/ExtUtils/typemap RRDs.xs > RRDs.xsc
&& mv RRDs.xsc RRDs.c
/usr/vac/bin/cc -c -I../../src -D_ALL_SOURCE -D_ANSI_C_SOURCE
-D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN
-DNEED_PTHREAD_INIT -q32 -D_LARGE_FILES -qlonglong -O
-DVERSION=\"1.2023\" -DXS_VERSION=\"1.2023\"
"-I/usr/opt/perl5/lib/5.8.2/aix-thread-multi/CORE" -DPERLPATCHLEVEL=8
RRDs.c
"/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.
make: 1254-004 The error code from the last command is 1.
Stop.
make: 1254-004 The error code from the last command is 2.
Tis didn't work either.
Tried it again with --disable-pthread.:
No avail.
Set the CC to /usr/vac/bin/cc_R
tried again....
It stoped at compiling rrdcgi.c
Anyone succesfully build the RRD tool under AIX 5.3 ?
I would like to include the multi-threading feature.
As you can see, I've tried using gcc AND xlC to compile rrd.. ;)
Any suggestions would be greatly appriciated.
Note:
I have perl 5.8.2 installed.
Perl -V output :
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 perlfly 2 5 000ad7df4c00 '
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='', 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/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
-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
Built under aix
Compiled at Feb 13 2004 13:18:17
@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
Regards,
Martijn van Leeuwen | NSM/RC-Unix | Directoraat Groep ICT Rabobank
================================================
De informatie opgenomen in dit bericht kan vertrouwelijk zijn en
is uitsluitend bestemd voor de geadresseerde. Indien u dit bericht
onterecht ontvangt, wordt u verzocht de inhoud niet te gebruiken en
de afzender direct te informeren door het bericht te retourneren.
Rabobank Nederland is een handelsnaam van de Cooperatieve
Centrale Raiffeisen-Boerenleenbank B.A.Rabobank Nederland
staat ingeschreven bij de K.V.K. onder nr. 30046259
================================================
The information contained in this message may be confidential
and is intended to be exclusively for the addressee. Should you
receive this message unintentionally, please do not use the contents
herein and notify the sender immediately by return e-mail.
Rabobank Nederland is a trade name of Cooperatieve Centrale
Raiffeisen-Boerenleenbank B.A. Rabobank Nederland is registered
by the Chamber of commerce under nr. 30046259
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.oetiker.ch/pipermail/rrd-users/attachments/20070919/a365d2bb/attachment-0001.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/gif
Size: 145 bytes
Desc: not available
Url : http://lists.oetiker.ch/pipermail/rrd-users/attachments/20070919/a365d2bb/attachment-0001.gif
More information about the rrd-users
mailing list