I am a DBA at Invacare corp. Several years ago we had a developer in here to wtie an ETL program in PERL to run our nightly Information Warehouse loads. This has been running fine until I tried to upgrade the Oracle Dtaabase to 9i v9.2.0.3. Now I cannot seem to get PERL to lnk with the database with the make test command. I have followed every note I could find including the README (keep in mind I am a DBA not a PERL developer (which we have none on staff)) to no avail. I keep getting stuck in the same place.
OS = AIX 4.3.3 - ksh Perl = 5.00502 Database = Oracle 9.2.0.3 DBD = 1.03 Here are the perl -V specs Summary of my perl5 (5.0 patchlevel 5 subversion 2) configuration: Platform: osname=aix, osvers=4.3.2.0, archname=aix uname='aix uss7a01 3 4 000931374c00 ' hint=previous, useposix=true, d_sigaction=define usethreads=undef useperlio=undef d_sfio=undef Compiler: cc='/usr/vac/bin/xlc_r', optimize='-O', gccversion= cppflags='-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384' ccflags ='-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384' stdchar='unsigned char', d_stdstdio=define, usevfork=false intsize=4, longsize=4, ptrsize=4, doublesize=8 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=8 alignbytes=8, usemymalloc=n, prototype=define Linker and Libraries: ld='ld', ldflags =' -L/opt/iw/packages/lib' libpth=/usr/vac/lib /opt/iw/packages/lib /lib /usr/lib /usr/ccs/lib libs=-L/usr/vac/lib -lnsl -ldbm -ldl -lld -lm_r -lc_r -lcrypt -lbsd -lPW libc=, so=a, useshrplib=false, libperl=libperl.a Dynamic Linking: dlsrc=dl_aix.xs, dlext=so, d_dlsymun=undef, ccdlflags='-bE:perl.exp' cccdlflags=' ', lddlflags='-bhalt:4 -bM:SRE -bI:$(PERL_INC)/perl.exp -bE:$(BASEEXT).exp -b noentry -lc_r -L/opt/iw/packages/lib' Characteristics of this binary (from libperl): Built under aix Compiled at Jun 4 1999 21:34:47 @INC: /opt/iw/packages/lib/perl5/5.00502/aix /opt/iw/packages/lib/perl5/5.00502 /opt/iw/packages/lib/perl5/site_perl/5.005/aix /opt/iw/packages/lib/perl5/site_perl/5.005 . I found that you need to export 2 parameters before starting $export OBJECT_MODE=64 $export export ORACLE_USERID= user/pass from there i ran a usaxs02:iwdba:/opt/iw/build/perl/modules/DBD-Oracle-1.03>make realclean rm -f blib/script/ora_explain rm -rf Oracle.c Oracle.xsi dll.base dll.exp sqlnet.log libOracle.def ./blib Makefile.aperl blib/arch/auto/DBD/Oracle/extrali bs.all perlmain.c mon.out core so_locations pm_to_blib *~ */*~ */*/*~ *.o *.a perl.exe Oracle.bs Oracle.bso Oracle.def Oracle.exp mv Makefile Makefile.old > /dev/null 2>&1 rm -rf blib/lib/auto/DBD/Oracle blib/arch/auto/DBD/Oracle rm -f blib/arch/auto/DBD/Oracle/Oracle.so blib/arch/auto/DBD/Oracle/Oracle.bs rm -f blib/arch/auto/DBD/Oracle/Oracle.a rm -f blib/lib/Oraperl.pm blib/lib/DBD/Oracle.pm blib/lib/oraperl.ph rm -rf Makefile Makefile.old usaxs02:iwdba:/opt/iw/build/perl/modules/DBD-Oracle-1.03>perl Makefile.PL Using DBI 1.13 installed in /opt/iw/packages/lib/perl5/site_perl/5.005/aix/auto/DBI Configuring DBD::Oracle ... >>> Remember to actually *READ* the README file! Especially if you have any problems. Using Oracle in /ORACLE/iwdba/9.2.0 Found /ORACLE/iwdba/9.2.0/rdbms/demo/demo_rdbms.mk Using /ORACLE/iwdba/9.2.0/rdbms/demo/demo_rdbms.mk Reading /ORACLE/iwdba/9.2.0/rdbms/demo/demo_rdbms.mk. Reading /ORACLE/iwdba/9.2.0/rdbms/lib/env_rdbms.mk. Deleting -b64 from COMPOBJS because -b64 doesn't exist. Deleting ORA_NLS = $(ORACLE_HOME)/ocommon/nls/admin/data/ because it is not already set in the environment and it can cause ORA-01019 errors. Deleting ORA_NLS33 = $(ORACLE_HOME)/ocommon/nls/admin/data/ because it is not already set in the environment and it can cause ORA-01019 errors. Use of uninitialized value at Makefile.PL line 735. Evaluating `cat $(LIBHOME)sysliblist` expanded `cat /ORACLE/iwdba/9.2.0/lib/sysliblist` returned '/lib/crt0_64.o -ldl -lc -lm -lpthreads -lodm -lbsd_r -lld' Found header files in rdbms/demo. Warning: You will probably need to rebuild perl using the xlc_r compiler. You may also need do: ORACCENV='cc=xlc_r'; export ORACCENV Also see the README about the -p option System: perl5.00502 aix uss7a01 3 4 000931374c00 Compiler: /usr/vac/bin/xlc_r -O -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 Linker: /usr/bin/ld Oracle makefiles would have used these definitions but we override them: CC: $(ORACLE_HOME)/bin/oraxlc $(ORAXLCFLAGS) CFLAGS: $(GFLAG) $(OPTIMIZE) $(CDEBUG) $(CCFLAGS) $(PFLAGS)\ $(SHARED_CFLAG) $(USRFLAGS) [$(GFLAG) -O3 $(CDEBUG) -q64 -I/ORACLE/iwdba/9.2.0/rdbms/demo -I/ORACLE/iwdba/9.2.0/rdbms/public -I/ORACLE/iwdba/9.2.0/pl sql/public -I/ORACLE/iwdba/9.2.0/network/public $(SPFLAGS) $(LPFLAGS) $(USRFLAGS)] build: $(CC) $(LDFLAGS) $(ORALIBPATH) -o $(EXE) $(OBJS) $(OCISHAREDLIBS) expanded `cat /ORACLE/iwdba/9.2.0/lib/sysliblist` [ /ORACLE/iwdba/9.2.0/bin/oraxlc $(ORAXLCFLAGS) -q64 -L $(LIBHOME) -L/ORACLE/iwdba/9.2.0/rdbms/lib/ -o $(EXE) $(OBJS) -lcl ntsh $(EXPDLIBS) -lld -lm /lib/crt0_64.o -ldl -lc -lm -lpthreads -lodm -lbsd_r -lld -lm $(USRLIBS) -lpthreads] LDFLAGS: -q64 [-q64] Linking with /ORACLE/iwdba/9.2.0/rdbms/lib/defopt.o /lib/crt0_64.o -lclntsh -lld -lm -ldl -lc -lm -lpthreads -lodm -lbsd_r -lld -l m -lpthreads [from $(DEF_OPT) $(OCISHAREDLIBS)] Checking if your kit is complete... Looks good Warning: By default new modules are installed into your 'site_lib' directories. Since site_lib directories come after the normal library directories you must delete any old DBD::Oracle files and directories from your 'privlib' and 'archlib' directories and their auto subdirectories. Using DBD::Oracle 1.03. Using DBI 1.13 installed in /opt/iw/packages/lib/perl5/site_perl/5.005/aix/auto/DBI Writing Makefile for DBD::Oracle *** If you have problems, read the README and README.help files *** (Of course, you have read README by now anyway, haven't you?) usaxs02:iwdba:/opt/iw/build/perl/modules/DBD-Oracle-1.03>make mkdir blib mkdir blib/lib mkdir blib/lib/DBD cp Oraperl.pm blib/lib/Oraperl.pm cp Oracle.pm blib/lib/DBD/Oracle.pm cp oraperl.ph blib/lib/oraperl.ph /opt/iw/packages/bin/perl " -I/opt/iw/packages/lib/perl5/5.00502/aix" " -I/opt/iw/packages/lib/perl5/5.00502" -e 'use ExtUtils ::Mksymlists; Mksymlists("NAME" => "DBD::Oracle", "DL_FUNCS" => { }, "DL_VARS" => []);' /opt/iw/packages/bin/perl -p -e "s/~DRIVER~/Oracle/g" < /opt/iw/packages/lib/perl5/site_perl/5.005/aix/auto/DBI/Driver.xst > Oracle.xsi /opt/iw/packages/bin/perl -I/opt/iw/packages/lib/perl5/5.00502/aix -I/opt/iw/packages/lib/perl5/5.00502 /opt/iw/packages/lib /perl5/5.00502/ExtUtils/xsubpp -typemap /opt/iw/packages/lib/perl5/5.00502/ExtUtils/typemap Oracle.xs >Oracle.tc && mv Oracle.tc Or acle.c /usr/vac/bin/xlc_r -c -I/ORACLE/iwdba/9.2.0/rdbms/demo -I/ORACLE/iwdba/9.2.0/rdbms/public -I/ORACLE/iwdba/9.2.0/plsql/public -I/ORACLE/iwdba/9.2.0/network/public -I/ORACLE/iwdba/9.2.0/rdbms/demo -I/ORACLE/iwdba/9.2.0/rdbms/demo -I/opt/iw/packages/lib/perl5 /site_perl/5.005/aix/auto/DBI -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -O -DVERSION=\"1.03\" -DXS_VERSION= \"1.03\" -I/opt/iw/packages/lib/perl5/5.00502/aix/CORE Oracle.c /usr/vac/bin/xlc_r -c -I/ORACLE/iwdba/9.2.0/rdbms/demo -I/ORACLE/iwdba/9.2.0/rdbms/public -I/ORACLE/iwdba/9.2.0/plsql/public -I/ORACLE/iwdba/9.2.0/network/public -I/ORACLE/iwdba/9.2.0/rdbms/demo -I/ORACLE/iwdba/9.2.0/rdbms/demo -I/opt/iw/packages/lib/perl5 /site_perl/5.005/aix/auto/DBI -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -O -DVERSION=\"1.03\" -DXS_VERSION= \"1.03\" -I/opt/iw/packages/lib/perl5/5.00502/aix/CORE dbdimp.c /usr/vac/bin/xlc_r -c -I/ORACLE/iwdba/9.2.0/rdbms/demo -I/ORACLE/iwdba/9.2.0/rdbms/public -I/ORACLE/iwdba/9.2.0/plsql/public -I/ORACLE/iwdba/9.2.0/network/public -I/ORACLE/iwdba/9.2.0/rdbms/demo -I/ORACLE/iwdba/9.2.0/rdbms/demo -I/opt/iw/packages/lib/perl5 /site_perl/5.005/aix/auto/DBI -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -O -DVERSION=\"1.03\" -DXS_VERSION= \"1.03\" -I/opt/iw/packages/lib/perl5/5.00502/aix/CORE oci7.c /usr/vac/bin/xlc_r -c -I/ORACLE/iwdba/9.2.0/rdbms/demo -I/ORACLE/iwdba/9.2.0/rdbms/public -I/ORACLE/iwdba/9.2.0/plsql/public -I/ORACLE/iwdba/9.2.0/network/public -I/ORACLE/iwdba/9.2.0/rdbms/demo -I/ORACLE/iwdba/9.2.0/rdbms/demo -I/opt/iw/packages/lib/perl5 /site_perl/5.005/aix/auto/DBI -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -O -DVERSION=\"1.03\" -DXS_VERSION= \"1.03\" -I/opt/iw/packages/lib/perl5/5.00502/aix/CORE oci8.c 1500-030: (I) INFORMATION: fetch_func_autolob: Additional optimization may be attained by recompiling and specifying MAXMEM opti on with a value greater than 16384. mkdir blib/arch mkdir blib/arch/auto mkdir blib/arch/auto/DBD mkdir blib/arch/auto/DBD/Oracle Running Mkbootstrap for DBD::Oracle () chmod 644 Oracle.bs LD_RUN_PATH="/ORACLE/iwdba/9.2.0/lib:/lib" ld -o blib/arch/auto/DBD/Oracle/Oracle.so -bhalt:4 -bM:SRE -bI:/opt/iw/packages/ lib/perl5/5.00502/aix/CORE/perl.exp -bE:Oracle.exp -b noentry -lc_r -L/opt/iw/packages/lib Oracle.o dbdimp.o oci7.o oci8.o /ORACL E/iwdba/9.2.0/rdbms/lib/defopt.o /lib/crt0_64.o -L/ORACLE/iwdba/9.2.0/lib/ -lclntsh -lld -lm -ldl -lc -lm -lpthreads -lodm -lbsd_ r -lld -lm -lpthreads chmod 755 blib/arch/auto/DBD/Oracle/Oracle.so cp Oracle.bs blib/arch/auto/DBD/Oracle/Oracle.bs chmod 644 blib/arch/auto/DBD/Oracle/Oracle.bs mkdir blib/lib/auto/DBD mkdir blib/lib/auto/DBD/Oracle mkdir blib/man1 mkdir blib/man3 Manifying blib/man3/DBD::Oraperl.3 Manifying blib/man3/DBD::Oracle.3 Manifying blib/man1/ora_explain.1 mkdir blib/script cp ora_explain blib/script/ora_explain /opt/iw/packages/bin/perl -I/opt/iw/packages/lib/perl5/5.00502/aix -I/opt/iw/packages/lib/perl5/5.00502 -MExtUtils::MakeMake r -e "MY->fixin(shift)" blib/script/ora_explain Target "makemakerdflt" is up to date. usaxs02:iwdba:/opt/iw/build/perl/modules/DBD-Oracle-1.03>make test PERL_DL_NONLAZY=1 /opt/iw/packages/bin/perl -Iblib/arch -Iblib/lib -I/opt/iw/packages/lib/perl5/5.00502/aix -I/opt/iw/packag es/lib/perl5/5.00502 -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t t/base..............install_driver(Oracle) failed: Can't load 'blib/arch/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle: dlopen: blib/arch/auto/DBD/Oracle/Oracle.so: can't load library blib/arch/auto/DBD/Oracle/Oracle.so103 blib/arch/auto/DBD/Oracle/Oracle.so a t /opt/iw/packages/lib/perl5/5.00502/aix/DynaLoader.pm line 168. at (eval 1) line 2 at t/base.t line 17 dubious Test returned status 8 (wstat 2048, 0x800) DIED. FAILED tests 4-5 Failed 2/5 tests, 60.00% okay t/general...........install_driver(Oracle) failed: Can't load 'blib/arch/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle: dlopen: blib/arch/auto/DBD/Oracle/Oracle.so: can't load library blib/arch/auto/DBD/Oracle/Oracle.so103 blib/arch/auto/DBD/Oracle/Oracle.so a t /opt/iw/packages/lib/perl5/5.00502/aix/DynaLoader.pm line 168. at (eval 1) line 2 at t/general.t line 20 dubious Test returned status 8 (wstat 2048, 0x800) t/long..............Can't load 'blib/arch/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle: dlopen: blib/arch/auto/DBD/Oracle/Oracl e.so: can't load library blib/arch/auto/DBD/Oracle/Oracle.so103 blib/arch/auto/DBD/Oracle/Oracle.so at /opt/iw/packages/lib/perl5/5. 00502/aix/DynaLoader.pm line 168. at t/long.t line 4 BEGIN failed--compilation aborted at t/long.t line 4. dubious Test returned status 8 (wstat 2048, 0x800) t/plsql.............Can't load 'blib/arch/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle: dlopen: blib/arch/auto/DBD/Oracle/Oracl e.so: can't load library blib/arch/auto/DBD/Oracle/Oracle.so103 blib/arch/auto/DBD/Oracle/Oracle.so at /opt/iw/packages/lib/perl5/5. 00502/aix/DynaLoader.pm line 168. at t/plsql.t line 17 BEGIN failed--compilation aborted at t/plsql.t line 17. dubious Test returned status 8 (wstat 2048, 0x800) t/reauth............skipping test on this platform Failed Test Status Wstat Total Fail Failed List of failed ------------------------------------------------------------------------------- t/base.t 8 2048 5 2 40.00% 4-5 t/general.t 8 2048 ?? ?? % ?? t/long.t 8 2048 ?? ?? % ?? t/plsql.t 8 2048 ?? ?? % ?? 1 test skipped. Failed 4/5 test scripts, 20.00% okay. 2/5 subtests failed, 60.00% okay. make: 1254-004 The error code from the last command is 2. any ideas? Mike Paladino Database Administrator ext. (440)326-3995 ----------------------------------------- The contents of this message represent the opinions of the employee and not necessarily the opinions of Invacare Corporation.