DBD-Oracle
view release on metacpan or search on metacpan
Makefile.PL view on Meta::CPAN
unlink "define.sql";
print $sqlplus_release; # the _SQLPLUS_RELEASE may not be on first line:
if ($sqlplus_release =~ /DEFINE _SQLPLUS_RELEASE = "(\d?\d)(\d\d)(\d\d)(\d\d)(\d\d)"/) {
$client_version_full = sprintf("%d.%d.%d.%d", $1, $2, $3, $4);
}
else {
my $ldlib_note = ($Config{ldlibpthname})
? "Specifically, your $Config{ldlibpthname} environment variable"
: "Many systems need an environment variable (such as LD_LIBRARY_PATH, DYLD_LIBRARY_PATH)";
warn qq{
If sqlplus failed due to a linker/symbol/relocation/library error or similar problem
then it's likely that you've not configured your environment correctly.
$ldlib_note
set to include the directory containing the Oracle libraries.
\a\n};
sleep 5;
}
}
else {
warn "Can't find sqlplus. Pity, it would have helped.\n";
}
If a test fails then also include the output of:
perl -Mblib t/<name-of-failed-test>.t
2. Full details of which version of Oracle client and server you're using
(if it wasn't automatically found and printed by "perl Makefile.PL")
3. The output of perl -V (that's a capital V, not lowercase)
4. If you get errors like "undefined symbol", "symbol not found",
"undefined reference", "Text relocation remains" or any similar
error then include the output of "perl Makefile.PL -s XXX"
where XXX is the name of one of the symbols.
Please don't send the entire output of this command,
just any obviously 'interesting' parts (if there are any).
See also the LINKTYPE=static notes above.
5. If you get a core dump, rebuild DBD::Oracle with debugging
enabled by executing: perl Makefile.PL -g (note the -g option)
then rerun the code to get a new core dump file, finally use a
debugger (gdb, sdb, dbx, adb etc) to get a stack trace from it.
README.help.txt view on Meta::CPAN
-------------------------------------------------------------------------------
Error: ld: Undefined symbols _environ _dlopen _dlclose ...
Environment: SunOS 4.1.3, Oracle 7.1.6 Steve Livingston <mouche@hometown.com>
If you get link errors like: ld: Undefined symbols _environ _dlopen _dlclose ...
and the link command line includes '-L/usr/5lib -lc' then comment out the
'CLIBS= $(OTHERLIBS) -L/usr/5lib -lc' line in the Makefile.
-------------------------------------------------------------------------------
Error: fatal: relocation error: symbol not found: main
Environment: Solaris, GCC
Do not use GNU as or GNU ld on Solaris. Delete or rename them, they are
just bad news. In the words of John D Groenveld <groenvel@cse.psu.edu>:
Run, don't walk, to your console and 'mv /opt/gnu/bin/as /opt/gnu/bin/gas;
mv /opt/gnu/bin/ld /opt/gnu/bin/gld'. You can add -v to the gcc command
in the Makefile to see what GCC is using.
-------------------------------------------------------------------------------
Error: relocation error:symbol not found:setitimer
Environment: SVR4, stephen.zander@mckesson.com
Error: can't load ./blib/arch/auto/DBD/Oracle/Oracle.so for module DBD::Oracle:
DynamicLinker:/usr/local/bin/perl:relocation error:symbol not found:setitimer
Fix: Try adding the '-lc' to $ORACLE_HOME/rdbms/lib/sysliblist (just
make sure it's not on a new line).
-------------------------------------------------------------------------------
Error: relocation error:symbol not found:mutex_init
Environment: UnixWare 7.x, earle.nietzel@es.unisys.com
On the UnixWare 7.x platform the compiler flag -Kthread is commonly used
when compiling for mulithread however in this case you should use -lthread.
The compiler will complain that you should be using -Kthread and not
-lthread, you should ignore these messages. Besure to check this compiler
flag in $ORACLE_HOME/lib/sysliblist also.
-------------------------------------------------------------------------------
Error: Undefined symbols __cg92_used at link time.
( run in 0.627 second using v1.01-cache-2.11-cpan-71847e10f99 )