Thanks to everyone that offered input (too many to mention), the issue has
been fixed. Even though I tried copying all of the oracle owner's
environment to root, and the root account could log in to oracle, the make
test didn't work. However, running the "perl Makefile.PL -p" and "make" as
root, then su -'ing to the oracle owner and running "make test", then back
to root to "make install" seems to have resolved the issue. My perl scripts
now successfully connect to, and select from, my database.
Also, I had a 9i issue with respect to the fact that the ORACLE_USERID
variable for the DBD install was set to sys/<password>. Under 9i, you can't
log in as sys without "as sysdba", so I changed the ORACLE_USERID to a
regular user/password, and that worked fine.
Regards,
David Hull
SAP Basis Administrator
Jabil Circuit, Inc.
+1.727.803.3855
"Science is like sex... Occasionally you produce something wonderful, but
that's not why you do it."
-- Richard Feynman
-----Original Message-----
From: David Hull [mailto:David_Hull_at_Jabil.com]
Sent: Monday, April 01, 2002 11:13 PM
To: 'tru64-unix-managers_at_ornl.gov'
Subject: DBD Install problems
Importance: High
Since this seems to be a Tru64 UNIX-specific issue (or at least the error is
only being report on Tru64 as far as I can tell), I thought I'd try this
mailing list as well. Has anyone here successfully compiled the perl
DBD::Oracle module? And if so, HOW?????
Regards,
David Hull
SAP Basis Administrator
Jabil Circuit, Inc.
+1.727.803.3855
> -----Original Message-----
> From: David Hull
> Sent: Monday, April 01, 2002 5:28 PM
> To: 'dbi-users_at_perl.org'
> Subject: DBD Install problems
> Importance: High
>
> Okay, several people have had similar problems to the one I'm having, all
> on various versions of Tru64 UNIX, with various versions of Oracle, but
> I've not seen any resolution searching through the archives. Can someone
> please provide some guidance here??? (FYI - DBI installed without error,
> and perl works fine, but this is my first attempt at an install of
> DBI/DBD)
>
> Basically, make test fails with:
> t/base..............Failed to load Oracle extension and/or shared
> libraries:
> 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: symbol "upioep" unresolved at
> /usr/local/lib/perl5/5.6.1/alpha-dec_osf/DynaLoader.pm line 206.
> at (eval 1) line 3
> Compilation failed in require at (eval 1) line 3.
> Perhaps a required shared library or dll isn't installed where expected
> at t/base.t line 19
>
> Line 19 of t/base.t is:
> $drh = DBI->install_driver('Oracle');
>
> Looking at line 206 from DynaLoader.pm, I get:
> 199 # Many dynamic extension loading problems will appear to come from
> 200 # this section of code: XYZ failed at line 123 of DynaLoader.pm.
> 201 # Often these errors are actually occurring in the initialisation
> 202 # C code of the extension XS file. Perl reports the error as being
> 203 # in this perl code simply because this was the last perl code
> 204 # it executed.
> 205
> 206 my $libref = dl_load_file($file, $module->dl_load_flags) or
> 207 croak("Can't load '$file' for module $module: ".dl_error());
>
> perl -V output:
> Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration:
> Platform:
> osname=dec_osf, osvers=5.1, archname=alpha-dec_osf
> uname='osf1 corsap03 v5.1 732 alpha '
> config_args='-de'
> hint=recommended, useposix=true, d_sigaction=define
> usethreads=undef use5005threads=undef useithreads=undef
> usemultiplicity=undef
> useperlio=undef d_sfio=undef uselargefiles=define usesocks=undef
> use64bitint=define use64bitall=define uselongdouble=undef
> Compiler:
> cc='cc', ccflags ='-std -fprm d -ieee -D_INTRINSICS -DLANGUAGE_C',
> optimize='-O4',
> cppflags='-std -ieee -D_INTRINSICS -DLANGUAGE_C'
> ccversion='V6.3-029', 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, usemymalloc=y, prototype=define
> Linker and Libraries:
> ld='ld', ldflags =''
> libpth=/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /var/shlib
> libs=-ldbm -ldb -lm -liconv -lutil
> perllibs=-lm -liconv -lutil
> libc=/usr/shlib/libc.so, so=so, useshrplib=true, libperl=libperl.so
> Dynamic Linking:
> dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='
> -Wl,-rpath,/usr/local/lib/perl5/5.6.1/alpha-dec_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 Mar 29 2002 16:22:21
> _at_INC:
> /usr/local/lib/perl5/5.6.1/alpha-dec_osf
> /usr/local/lib/perl5/5.6.1
> /usr/local/lib/perl5/site_perl/5.6.1/alpha-dec_osf
> /usr/local/lib/perl5/site_perl/5.6.1
> /usr/local/lib/perl5/site_perl
> .
>
> Environment variables:
> PATH=/sbin:/usr/sbin:/usr/bin:/usr/ccs/bin:/usr/bin/X11:/usr/local/bin:/or
> acle/MOPS/901_64/bin
> I_SYM=-I
> LOGNAME=hulld
> ORACLE_SID=MOPS
> USER=root
> SAPSID=BSA
> SHELL=/bin/ksh
> JAVA_HOME=/opt/jre131
> HOME=/
> LD_LIBRARY_PATH=/oracle/MOPS/901_64/lib
> TERM=dtterm
> ORACLE_HOME=/oracle/MOPS/901_64
> PWD=/usr/src/DBD-Oracle-1.12
>
>
> install log:
> Script started on Mon Apr 1 14:30:29 2002
> # perl Makefile.PL
> Using DBI 1.21 installed in
> /usr/local/lib/perl5/site_perl/5.6.1/alpha-dec_osf/auto/DBI
>
> Configuring DBD::Oracle ...
>
> >>> Remember to actually *READ* the README file!
> Especially if you have any problems.
>
> Using Oracle in /oracle/MOPS/901_64
> Found header files in rdbms/demo.
> Found /oracle/MOPS/901_64/rdbms/demo/demo_rdbms.mk
> Found /oracle/MOPS/901_64/otrace/demo/atmoci.mk
> Found /oracle/MOPS/901_64/precomp/demo/proc/demo_proc.mk
> Using /oracle/MOPS/901_64/rdbms/demo/demo_rdbms.mk
> Reading /oracle/MOPS/901_64/rdbms/demo/demo_rdbms.mk.
> Reading /oracle/MOPS/901_64/rdbms/lib/env_rdbms.mk.
> 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.
>
> Attempting to discover Oracle OCI build rules...
> cc -c -I/oracle/MOPS/901_64/rdbms/demo -I/oracle/MOPS/901_64/rdbms/public
> -I/oracle/MOPS/901_64/plsql/public -I/oracle/MOPS/901_64/network/public
> -I/oracle/MOPS/901_64/rdbms/demo -I/oracle/MOPS/901_64/rdbms/demo
> -I/usr/local/lib/perl5/site_perl/5.6.1/alpha-dec_osf/auto/DBI -std -fprm d
> -ieee -D_INTRINSICS -DLANGUAGE_C -O4 -DVERSION=\"1.12\"
> -DXS_VERSION=\"1.12\" -I/usr/local/lib/perl5/5.6.1/alpha-dec_osf/CORE
> DBD_ORA_OBJ.c
> Oracle oci build command:
> echo -L/oracle/MOPS/901_64/lib/ -L/oracle/MOPS/901_64/rdbms/lib/ -o
> DBD_ORA_EXE DBD_ORA_OBJ.o -lclntsh `cat /oracle/MOPS/901_64/lib/ldflags`
> `cat /oracle/MOPS/901_64/lib/sysliblist` -lm
> -L/oracle/MOPS/901_64/lib/ -L/oracle/MOPS/901_64/rdbms/lib/ -o
> DBD_ORA_EXE DBD_ORA_OBJ.o -lclntsh -lnbeq9 -lnhost9 -lnus9 -lnldap9
> -lldapclnt9 -lnsslb9 -lnoname9 -lntcp9 -lntcps9 -lnsslb9 -lntcp9 -lntns9
> -lexc -lmld -lrt -laio_raw -lm -lm
> Unable to interpret Oracle oci build commands. Using fallback approach.
>
>
> System: perl5.006001 osf1 corsap03 v5.1 732 alpha
> Compiler: cc -O4 -std -fprm d -ieee -D_INTRINSICS -DLANGUAGE_C
> Linker: /usr/bin/ld
> Sysliblist: -lexc -lmld -lrt -laio_raw -lm
> Oracle makefiles would have used these definitions but we override them:
> CC: cc
>
> CFLAGS: $(GFLAG) $(OPTIMIZE) $(CDEBUG) $(CCFLAGS) $(PFLAGS)\
> $(SHARED_CFLAG) $(USRFLAGS)
> [$(GFLAG) -O3 -fast -U_FASTMATH -assume math_errno -O3 -fast
> -U_FASTMATH -assume math_errno $(GEMC_FLAGS) -std1 -DOSF1 -DA_OSF
> -readonly_strings -ieee -noansi_alias -DARCH_EV56 -arch ev56 -tune ev6
> -I/oracle/MOPS/901_64/rdbms/demo -I/oracle/MOPS/901_64/rdbms/public
> -I/oracle/MOPS/901_64/plsql/public -I/oracle/MOPS/901_64/network/public
> $(LPFLAGS) $(SHARED_CFLAG) $(USRFLAGS)]
>
> build: $(CC) $(LIBPATH) -o $(EXE) $(OBJS) $(SHARED_LDCLIENTLIBS)
> Evaluating `cat $(LIBHOME)ldflags`
> expanded `cat /oracle/MOPS/901_64/lib/ldflags`
> returned '-lnbeq9 -lnhost9 -lnus9 -lnldap9 -lldapclnt9 -lnsslb9
> -lnoname9 -lntcp9 -lntcps9 -lnsslb9 -lntcp9 -lntns9
> '
> Evaluating `cat $(LIBHOME)sysliblist`
> expanded `cat /oracle/MOPS/901_64/lib/sysliblist`
> returned '-lexc -lmld -lrt -laio_raw -lm'
> [ cc -L$(LIBHOME) -L/oracle/MOPS/901_64/rdbms/lib/ -o $(EXE)
> $(OBJS) -lclntsh -lnbeq9 -lnhost9 -lnus9 -lnldap9 -lldapclnt9 -lnsslb9
> -lnoname9 -lntcp9 -lntcps9 -lnsslb9 -lntcp9 -lntns9 $(EXPDLIBS) -lexc
> -lmld -lrt -laio_raw -lm $(EXSYSLIBS) -lm $(USRLIBS)]
>
> LDFLAGS: $(LDOPTIMIZE) $(SHARED_FLAG) -o $_at_ $(PRODUCT_LIBHOME)
> -L$(LIBHOME) $(NO_STRIP_EXE?:-s)
> [$(CDEBUG?-O3 -fast -U_FASTMATH -assume math_errno:-O3) -o $_at_
> -L/oracle/MOPS/901_64/rdbms/lib -L$(LIBHOME) -s]
>
>
> Linking with /oracle/MOPS/901_64/rdbms/lib/defopt.o -lclntsh -lc [from
> $(DEF_OPT) $(OCISHAREDLIBS)]
>
>
> Warning: If you have problems you may need to rebuild perl with
> -Uusemymalloc.
>
> LD_RUN_PATH=/oracle/MOPS/901_64/lib:/usr/shlib
> Using DBD::Oracle 1.12.
> Using DBI 1.21 installed in
> /usr/local/lib/perl5/site_perl/5.6.1/alpha-dec_osf/auto/DBI
> Writing Makefile for DBD::Oracle
>
> *** If you have problems...
> read all the log printed above, and the README and README.help files.
> (Of course, you have read README by now anyway, haven't you?)
>
> # make
> Skip blib/lib/DBD/Oracle.pm (unchanged)
> cp mk.pm blib/arch/auto/DBD/Oracle/mk.pm
> Skip blib/arch/auto/DBD/Oracle/dbdimp.h (unchanged)
> Skip blib/arch/auto/DBD/Oracle/ocitrace.h (unchanged)
> Skip blib/arch/auto/DBD/Oracle/Oracle.h (unchanged)
> Skip blib/lib/oraperl.ph (unchanged)
> cp perl-makefile.pl blib/lib/DBD/perl-makefile.pl
> Skip blib/lib/Oraperl.pm (unchanged)
> cc -c -I/oracle/MOPS/901_64/rdbms/demo -I/oracle/MOPS/901_64/rdbms/public
> -I/oracle/MOPS/901_64/plsql/public -I/oracle/MOPS/901_64/network/public
> -I/oracle/MOPS/901_64/rdbms/demo -I/oracle/MOPS/901_64/rdbms/demo
> -I/usr/local/lib/perl5/site_perl/5.6.1/alpha-dec_osf/auto/DBI -std -fprm d
> -ieee -D_INTRINSICS -DLANGUAGE_C -O4 -DVERSION=\"1.12\"
> -DXS_VERSION=\"1.12\" -I/usr/local/lib/perl5/5.6.1/alpha-dec_osf/CORE
> Oracle.c
> cc -c -I/oracle/MOPS/901_64/rdbms/demo -I/oracle/MOPS/901_64/rdbms/public
> -I/oracle/MOPS/901_64/plsql/public -I/oracle/MOPS/901_64/network/public
> -I/oracle/MOPS/901_64/rdbms/demo -I/oracle/MOPS/901_64/rdbms/demo
> -I/usr/local/lib/perl5/site_perl/5.6.1/alpha-dec_osf/auto/DBI -std -fprm d
> -ieee -D_INTRINSICS -DLANGUAGE_C -O4 -DVERSION=\"1.12\"
> -DXS_VERSION=\"1.12\" -I/usr/local/lib/perl5/5.6.1/alpha-dec_osf/CORE
> dbdimp.c
> cc -c -I/oracle/MOPS/901_64/rdbms/demo -I/oracle/MOPS/901_64/rdbms/public
> -I/oracle/MOPS/901_64/plsql/public -I/oracle/MOPS/901_64/network/public
> -I/oracle/MOPS/901_64/rdbms/demo -I/oracle/MOPS/901_64/rdbms/demo
> -I/usr/local/lib/perl5/site_perl/5.6.1/alpha-dec_osf/auto/DBI -std -fprm d
> -ieee -D_INTRINSICS -DLANGUAGE_C -O4 -DVERSION=\"1.12\"
> -DXS_VERSION=\"1.12\" -I/usr/local/lib/perl5/5.6.1/alpha-dec_osf/CORE
> oci7.c
> cc -c -I/oracle/MOPS/901_64/rdbms/demo -I/oracle/MOPS/901_64/rdbms/public
> -I/oracle/MOPS/901_64/plsql/public -I/oracle/MOPS/901_64/network/public
> -I/oracle/MOPS/901_64/rdbms/demo -I/oracle/MOPS/901_64/rdbms/demo
> -I/usr/local/lib/perl5/site_perl/5.6.1/alpha-dec_osf/auto/DBI -std -fprm d
> -ieee -D_INTRINSICS -DLANGUAGE_C -O4 -DVERSION=\"1.12\"
> -DXS_VERSION=\"1.12\" -I/usr/local/lib/perl5/5.6.1/alpha-dec_osf/CORE
> oci8.c
> cc: Warning: oci8.c, line 267: In this statement, the referenced type of
> the pointer value "(void ...)oci_st_handle" is "void", which is not
> compatible with "function (pointer to struct imp_dbh_st, int, int)
> returning pointer to void". (ptrmismatch)
> imp_sth->get_oci_handle = (void*)oci_st_handle;
> ----^
> Running Mkbootstrap for DBD::Oracle ()
> chmod 644 Oracle.bs
> ar cr tmp.a Oracle.o dbdimp.o oci7.o oci8.o
> : tmp.a
> rm -f blib/arch/auto/DBD/Oracle/Oracle.so
> LD_RUN_PATH="/oracle/MOPS/901_64/lib:/usr/shlib" ld -shared
> -expect_unresolved "*" -O4 -msym -std -s -all tmp.a -none
> /oracle/MOPS/901_64/rdbms/lib/defopt.o -o
> blib/arch/auto/DBD/Oracle/Oracle.so -L/oracle/MOPS/901_64/lib/ -lclntsh
> -lc
> 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
> cp ora_explain blib/script/ora_explain
> /usr/bin/perl -I/usr/local/lib/perl5/5.6.1/alpha-dec_osf
> -I/usr/local/lib/perl5/5.6.1 -MExtUtils::MakeMaker -e "MY->fixin(shift)"
> blib/script/ora_explain
> Manifying blib/man3/DBD::Oracle.3
> Manifying blib/man1/ora_explain.1
> Manifying blib/man3/DBD::Oraperl.3
>
> # make test
> PERL_DL_NONLAZY=1 /usr/bin/perl -Iblib/arch -Iblib/lib
> -I/usr/local/lib/perl5/5.6.1/alpha-dec_osf -I/usr/local/lib/perl5/5.6.1 -e
> 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests _at_ARGV;'
> t/*.t
> t/base..............Failed to load Oracle extension and/or shared
> libraries:
> 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: symbol "upioep" unresolved at
> /usr/local/lib/perl5/5.6.1/alpha-dec_osf/DynaLoader.pm line 206.
> at (eval 1) line 3
> Compilation failed in require at (eval 1) line 3.
> Perhaps a required shared library or dll isn't installed where expected
> at t/base.t line 19
> The remaining tests will probably also fail with the same error.
>
> *** Please read the README and README.help files for help. ***
>
>
>
>
> t/base..............ok 1/5
>
>
> t/base..............ok 2/5
>
>
> t/base..............ok 3/5
>
>
> t/base..............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: symbol "upioep" unresolved at
> /usr/local/lib/perl5/5.6.1/alpha-dec_osf/DynaLoader.pm line 206.
> at (eval 1) line 3
> Compilation failed in require at (eval 1) line 3.
> Perhaps a required shared library or dll isn't installed where expected
> at t/general.t line 20
>
>
>
> t/general...........dubious
> Test returned status 255 (wstat 65280, 0xff00)
> t/long..............Can't load 'blib/arch/auto/DBD/Oracle/Oracle.so' for
> module DBD::Oracle: dlopen: blib/arch/auto/DBD/Oracle/Oracle.so: symbol
> "upioep" unresolved at
> /usr/local/lib/perl5/5.6.1/alpha-dec_osf/DynaLoader.pm line 206.
> at t/long.t line 4
> Compilation failed in require at t/long.t line 4.
> BEGIN failed--compilation aborted at t/long.t line 4.
>
>
>
> t/long..............dubious
> Test returned status 255 (wstat 65280, 0xff00)
> t/ph_type...........Can't load 'blib/arch/auto/DBD/Oracle/Oracle.so' for
> module DBD::Oracle: dlopen: blib/arch/auto/DBD/Oracle/Oracle.so: symbol
> "upioep" unresolved at
> /usr/local/lib/perl5/5.6.1/alpha-dec_osf/DynaLoader.pm line 206.
> at t/ph_type.t line 20
> Compilation failed in require at t/ph_type.t line 20.
> BEGIN failed--compilation aborted at t/ph_type.t line 20.
>
>
>
> t/ph_type...........dubious
> Test returned status 255 (wstat 65280, 0xff00)
> t/plsql.............Can't load 'blib/arch/auto/DBD/Oracle/Oracle.so' for
> module DBD::Oracle: dlopen: blib/arch/auto/DBD/Oracle/Oracle.so: symbol
> "upioep" unresolved at
> /usr/local/lib/perl5/5.6.1/alpha-dec_osf/DynaLoader.pm line 206.
> at t/plsql.t line 17
> Compilation failed in require at t/plsql.t line 17.
> BEGIN failed--compilation aborted at t/plsql.t line 17.
>
>
>
> t/plsql.............dubious
> Test returned status 255 (wstat 65280, 0xff00)
> t/reauth............skipped test on this platform
> Failed Test Status Wstat Total Fail Failed List of Failed
> --------------------------------------------------------------------------
> ------
> t/base.t 5 2 40.00% 4-5
> t/general.t 255 65280 ?? ?? % ??
> t/long.t 255 65280 ?? ?? % ??
> t/ph_type.t 255 65280 ?? ?? % ??
> t/plsql.t 255 65280 ?? ?? % ??
> 1 test skipped.
> Failed 5/6 test scripts, 16.67% okay. 2/5 subtests failed, 60.00% okay.
> *** Exit 2
> Stop.
> # exit
>
> script done on Mon Apr 1 14:32:00 2002
>
>
>
> Regards,
> David Hull
> SAP Basis Administrator
> Jabil Circuit, Inc.
> +1.727.803.3855
>
> "Science is like sex... Occasionally you produce something wonderful, but
> that's not why you do it."
> -- Richard Feynman
>
Received on Tue Apr 02 2002 - 14:02:08 NZST