Environment:
Solaris 2.7
Perl v5.6
Dirver Manager: Merant
DBI v1.18
DBD-ODBC v0.28
I'm having problems compiling DBD::ODBC. DBI
compiled fine. I'm sorry if this has been discussed
before, but I couldn't locate an answer.
Below is the output from make. "make test" complains
about a missing shared library. I don't have
llibdbodbc.so anywhere on my system.
Can someone tell if if this missing library is
*really* the problem or am I doing something wrong?
If the problem is this missing library, can someone
direct me to where I can find it?
################ BEGIN COMPILE DUMP ###############
perl Makefile.PL
Unrecognized escape \i passed through at Makefile.PL
line 217.
Configuring DBD::ODBC ...
>>> Remember to actually *READ* the README file!
And re-read it if you have any problems.
Using DBI 1.18 installed in
/usr/local/lib/perl5/site_perl/5.6.0/sun4-
solaris/auto/DBI
Using ODBC in /opt/odbc
Umm, this looks like a unixodbc type of driver
manager.
We expect to find the sql.h, sqlext.h and (which were
supplied with unixODBC) in $ODBCHOME/include
directory alongside
the /opt/odbc/lib/libdbodbc.so /opt/odbc/lib/liblsxodb
c.so
/opt/odbc/lib/libodbc.so /opt/odbc/lib/libodbcinst.so
/opt/odbc/lib/llibdbodbc.so /opt/odbc/lib/odbccurs.so
/opt/odbc/lib/odbctrac.so library. in $ODBCHOME/lib
Checking if your kit is complete...
Looks good
Note (probably harmless): No library found for -
llibdbodbc.so
Using DBI 1.18 installed in
/usr/local/lib/perl5/site_perl/5.6.0/sun4-
solaris/auto/DBI
Writing Makefile for DBD::ODBC
The DBD::ODBC tests will use these values for the
database connection:
DBI_DSN=dbi:ODBC:SUNODBC e.g.
dbi:ODBC:demo
DBI_USER=xxxxxxx
DBI_PASS=xxxxxxx
make
gcc -c -I. -
I/usr/local/lib/perl5/site_perl/5.6.0/sun4-
solaris/auto/DBI
-fno-strict-aliasing -I/usr/local/include -
D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -O -DVERSION=\"0.28\" -
DXS_VERSION=\"0.28\"
-fPIC -I/usr/local/lib/perl5/5.6.0/sun4-solaris/CORE -
I/opt/odbc/include
ODBC.c
gcc -c -I. -
I/usr/local/lib/perl5/site_perl/5.6.0/sun4-
solaris/auto/DBI
-fno-strict-aliasing -I/usr/local/include -
D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -O -DVERSION=\"0.28\" -
DXS_VERSION=\"0.28\"
-fPIC -I/usr/local/lib/perl5/5.6.0/sun4-solaris/CORE -
I/opt/odbc/include
dbdimp.c
Running Mkbootstrap for DBD::ODBC ()
chmod 644 ODBC.bs
LD_RUN_PATH="" gcc -o
blib/arch/auto/DBD/ODBC/ODBC.so -G
-L/usr/local/lib ODBC.o dbdimp.o
chmod 755 blib/arch/auto/DBD/ODBC/ODBC.so
cp ODBC.bs blib/arch/auto/DBD/ODBC/ODBC.bs
chmod 644 blib/arch/auto/DBD/ODBC/ODBC.bs
Manifying blib/man3/DBD::ODBC.3
make test TEST_VERBOSE=1
PERL_DL_NONLAZY=1 /bin/perl -Iblib/arch -Iblib/lib
-I/usr/local/lib/perl5/5.6.0/sun4-solaris -
I/usr/local/lib/perl5/5.6.0
-e 'use Test::Harness qw(&runtests $verbose);
$verbose=1; runtests
@ARGV;' t/*.t
t/01base............install_driver(ODBC) failed:
Can't load
'blib/arch/auto/DBD/ODBC/ODBC.so' for module
DBD::ODBC: ld.so.1:
/bin/perl: fatal: relocation error: file
blib/arch/auto/DBD/ODBC/ODBC.so: symbol
SQLGetFunctions: referenced
symbol not found at
/usr/local/lib/perl5/5.6.0/sun4-solaris/DynaLoader.pm
line 200.
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/01base.t line 14
1..5
ok 1
ok 2
ok 3
dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 4-5
Failed 2/5 tests, 60.00% okay
t/02simple..........1..14
ok 1
Test 2: connecting to the database
install_driver(ODBC) failed: Can't load
'blib/arch/auto/DBD/ODBC/ODBC.so' for module
DBD::ODBC: ld.so.1:
/bin/perl: fatal: relocation error: file
blib/arch/auto/DBD/ODBC/ODBC.so: symbol
SQLGetFunctions: referenced
symbol not found at
/usr/local/lib/perl5/5.6.0/sun4-solaris/DynaLoader.pm
line 200.
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/02simple.t line 16
dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 2-14
Failed 13/14 tests, 7.14% okay
t/03dbatt...........1..6
ok 1
install_driver(ODBC) failed: Can't load
'blib/arch/auto/DBD/ODBC/ODBC.so' for module
DBD::ODBC: ld.so.1:
/bin/perl: fatal: relocation error: file
blib/arch/auto/DBD/ODBC/ODBC.so: symbol
SQLGetFunctions: referenced
symbol not found at
/usr/local/lib/perl5/5.6.0/sun4-solaris/DynaLoader.pm
line 200.
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/03dbatt.t line 12
dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 2-6
Failed 5/6 tests, 16.67% okay
t/05meth............1..6
ok 1
install_driver(ODBC) failed: Can't load
'blib/arch/auto/DBD/ODBC/ODBC.so' for module
DBD::ODBC: ld.so.1:
/bin/perl: fatal: relocation error: file
blib/arch/auto/DBD/ODBC/ODBC.so: symbol
SQLGetFunctions: referenced
symbol not found at
/usr/local/lib/perl5/5.6.0/sun4-solaris/DynaLoader.pm
line 200.
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/05meth.t line 13
dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 2-6
Failed 5/6 tests, 16.67% okay
t/09bind............1..9
ok 1
Test 2: connecting to the database
install_driver(ODBC) failed: Can't load
'blib/arch/auto/DBD/ODBC/ODBC.so' for module
DBD::ODBC: ld.so.1:
/bin/perl: fatal: relocation error: file
blib/arch/auto/DBD/ODBC/ODBC.so: symbol
SQLGetFunctions: referenced
symbol not found at
/usr/local/lib/perl5/5.6.0/sun4-solaris/DynaLoader.pm
line 200.
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/09bind.t line 11
dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 2-9
Failed 8/9 tests, 11.11% okay
Failed Test Status Wstat Total Fail Failed List of
failed
------------------------------------------------------
-------------------------
t/01base.t 255 65280 5 2 40.00% 4-5
t/02simple.t 255 65280 14 13 92.86% 2-14
t/03dbatt.t 255 65280 6 5 83.33% 2-6
t/05meth.t 255 65280 6 5 83.33% 2-6
t/09bind.t 255 65280 9 8 88.89% 2-9
Failed 5/5 test scripts, 0.00% okay. 33/40 subtests
failed, 17.50% okay.
make: *** [test_dynamic] Error 2
############### LINE ~200 FROM DynaLoader.pm
##############
# Many dynamic extension loading problems will
appear to come from
# this section of code: XYZ failed at line 123 of
DynaLoader.pm.
# Often these errors are actually occurring in
the initialisation
# C code of the extension XS file. Perl reports
the error as being
# in this perl code simply because this was the
last perl code
# it executed.
my $libref = dl_load_file($file, $module-
>dl_load_flags) or
croak("Can't load '$file' for module
$module: ".dl_error());