MySQL Forums
Forum List  »  Perl

MySQL, Solaris 9 and DBD::mysql
Posted by: Sakshale eQuorian
Date: December 07, 2004 05:13PM

Sigh....

First, I apologize for the length of this post, but I figured I needed to put everything out in the open to prevent multiple rounds of "did you do this?" questions.

I've lost count of the number of times I have installed/removed/rebuilt mysql on a Solaris 9 box and still cannot get DBD::mysql to work. I originally installed the binary from the Freeware for Solaris site [1], but it didn't work. I then installed the binary from a mysql.com mirror, but it also failed. I then built it from source, but the -m64 option bit me, so I rebuilt mysql from source without the -m64, but still can't get DBD::mysql to past a "make test".

[1] http://mirror.sprintlink.net/sunfreeware.com/

I've searched all the various zones, tried tons of different options, but keep ending up in the same place.

Clues, hints and even flames are welcome... just point me to what I am doing wrong.... Please!

Gory details follow;

# /usr/local/mysql/bin/mysql_config --libs
-L/usr/local/mysql/lib/mysql -lmysqlclient -lposix4 -lcrypt -lgen -lsocket -lnsl -lm -lz
# mysql --version
mysql Ver 14.7 Distrib 4.1.7, for sun-solaris2.9 (sparc)
# perl --version
This is perl, v5.8.5 built for sun4-solaris
[binary install from SunFreeware site - Both perl-5.8.5-sol9-sparc-local and perl_s-5.8.5-sol9-sparc-local are installed]


----- config -----
[DBD-mysql-2.9004]# perl Makefile.PL --libs="-L/usr/local/mysql/lib/mysql -lmysqlclient -lposix4 -lcrypt -lgen -lsocket -lnsl -lm -L/usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2 -lgcc"
I will use the following settings for compiling and testing:

cflags (mysql_config) = -I/usr/local/mysql/include/mysql -fno-omit-frame-pointer
libs (Users choice) = -L/usr/local/mysql/lib/mysql -lmysqlclient -lposix4 -lcrypt -lgen -lsocket -lnsl -lm -L/usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2 -lgcc
nocatchstderr (default ) = 0
nofoundrows (default ) = 0
ssl (guessed ) = 0
testdb (default ) = test
testhost (default ) =
testpassword (default ) =
testuser (default ) =

To change these settings, see 'perl Makefile.PL --help' and
'perldoc INSTALL'.

Using DBI 1.46 (for perl 5.008005 on sun4-solaris) installed in /usr/local/lib/perl5/site_perl/5.8.5/sun4-solaris/auto/DBI/
Writing Makefile for DBD::mysql
[DBD-mysql-2.9004]#
-------------------

No obvious errors

----- make -----
[DBD-mysql-2.9004]# make
cp lib/DBD/mysql.pm blib/lib/DBD/mysql.pm
cp lib/DBD/mysql/GetInfo.pm blib/lib/DBD/mysql/GetInfo.pm
cp lib/Mysql.pm blib/lib/Mysql.pm
cp lib/DBD/mysql/INSTALL.pod blib/lib/DBD/mysql/INSTALL.pod
cp lib/Mysql/Statement.pm blib/lib/Mysql/Statement.pm
cp lib/Bundle/DBD/mysql.pm blib/lib/Bundle/DBD/mysql.pm
gcc -B/usr/ccs/bin/ -c -I/usr/local/lib/perl5/site_perl/5.8.5/sun4-solaris/auto/DBI/ -I/usr/local/mysql/include/mysql -fno-omit-frame-pointer -fno-strict-aliasing -pipe -I/usr/local/include -I/opt/gnu/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -DVERSION=\"2.9004\" -DXS_VERSION=\"2.9004\" -fPIC "-I/usr/local/lib/perl5/5.8.5/sun4-solaris/CORE" dbdimp.c
/usr/local/bin/perl -p -e "s/~DRIVER~/mysql/g" /usr/local/lib/perl5/site_perl/5.8.5/sun4-solaris/auto/DBI//Driver.xst > mysql.xsi
/usr/local/bin/perl /usr/local/lib/perl5/5.8.5/ExtUtils/xsubpp -typemap /usr/local/lib/perl5/5.8.5/ExtUtils/typemap mysql.xs > mysql.xsc && mv mysql.xsc mysql.c
Warning: duplicate function definition 'do' detected in mysql.xs, line 196
Warning: duplicate function definition 'rows' detected in mysql.xs, line 294
gcc -B/usr/ccs/bin/ -c -I/usr/local/lib/perl5/site_perl/5.8.5/sun4-solaris/auto/DBI/ -I/usr/local/mysql/include/mysql -fno-omit-frame-pointer -fno-strict-aliasing -pipe -I/usr/local/include -I/opt/gnu/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -DVERSION=\"2.9004\" -DXS_VERSION=\"2.9004\" -fPIC "-I/usr/local/lib/perl5/5.8.5/sun4-solaris/CORE" mysql.c
Running Mkbootstrap for DBD::mysql ()
chmod 644 mysql.bs
rm -f blib/arch/auto/DBD/mysql/mysql.so
LD_RUN_PATH="/usr/local/lib:/usr/lib" /usr/local/bin/perl myld gcc -B/usr/ccs/bin/ -G -L/usr/local/lib -L/opt/gnu/lib dbdimp.o mysql.o -o blib/arch/auto/DBD/mysql/mysql.so -L/usr/local/mysql/lib -lmysqlclient -lposix4 -lcrypt -lgen -lsocket -lnsl -lm -L/usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2 -lgcc
chmod 755 blib/arch/auto/DBD/mysql/mysql.so
cp mysql.bs blib/arch/auto/DBD/mysql/mysql.bs
chmod 644 blib/arch/auto/DBD/mysql/mysql.bs
Manifying blib/man3/DBD::mysql.3
Manifying blib/man3/DBD::mysql::INSTALL.3
Manifying blib/man3/Mysql.3
Manifying blib/man3/Bundle::DBD::mysql.3
[DBD-mysql-2.9004]#

-------------------

Again, no obvious errors, other than two warnings that I have seen in every post on this subject.

Warning: duplicate function definition 'do' detected in mysql.xs, line 196
Warning: duplicate function definition 'rows' detected in mysql.xs, line 294

Then everything dies....

----- make test -----

[DBD-mysql-2.9004]# make test
PERL_DL_NONLAZY=1 /usr/local/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00base...........install_driver(mysql) failed: Can't load '/root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: ld.so.1: /usr/local/bin/perl: fatal: relocation error: file /root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so: symbol mysql_get_parameters: referenced symbol not found at /usr/local/lib/perl5/5.8.5/sun4-solaris/DynaLoader.pm line 230.
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/00base.t line 38
t/00base...........dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 4-5
Failed 2/5 tests, 60.00% okay
t/10dsnlist........install_driver(mysql) failed: Can't load '/root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: ld.so.1: /usr/local/bin/perl: fatal: relocation error: file /root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so: symbol mysql_get_parameters: referenced symbol not found at /usr/local/lib/perl5/5.8.5/sun4-solaris/DynaLoader.pm line 230.
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/10dsnlist.t line 45
t/10dsnlist........dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-9
Failed 9/9 tests, 0.00% okay
t/20createdrop.....install_driver(mysql) failed: Can't load '/root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: ld.so.1: /usr/local/bin/perl: fatal: relocation error: file /root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so: symbol mysql_get_parameters: referenced symbol not found at /usr/local/lib/perl5/5.8.5/sun4-solaris/DynaLoader.pm line 230.
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/20createdrop.t line 45
t/20createdrop.....dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-5
Failed 5/5 tests, 0.00% okay
t/30insertfetch....install_driver(mysql) failed: Can't load '/root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: ld.so.1: /usr/local/bin/perl: fatal: relocation error: file /root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so: symbol mysql_get_parameters: referenced symbol not found at /usr/local/lib/perl5/5.8.5/sun4-solaris/DynaLoader.pm line 230.
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/30insertfetch.t line 48
t/30insertfetch....dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-11
Failed 11/11 tests, 0.00% okay
t/40bindparam......install_driver(mysql) failed: Can't load '/root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: ld.so.1: /usr/local/bin/perl: fatal: relocation error: file /root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so: symbol mysql_get_parameters: referenced symbol not found at /usr/local/lib/perl5/5.8.5/sun4-solaris/DynaLoader.pm line 230.
at (eval 3) line 3
Compilation failed in require at (eval 3) line 3.
Perhaps a required shared library or dll isn't installed where expected
at t/40bindparam.t line 64
t/40bindparam......dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-28
Failed 28/28 tests, 0.00% okay
t/40blobs..........install_driver(mysql) failed: Can't load '/root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: ld.so.1: /usr/local/bin/perl: fatal: relocation error: file /root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so: symbol mysql_get_parameters: referenced symbol not found at /usr/local/lib/perl5/5.8.5/sun4-solaris/DynaLoader.pm line 230.
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/40blobs.t line 68
t/40blobs..........dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-11
Failed 11/11 tests, 0.00% okay
t/40listfields.....install_driver(mysql) failed: Can't load '/root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: ld.so.1: /usr/local/bin/perl: fatal: relocation error: file /root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so: symbol mysql_get_parameters: referenced symbol not found at /usr/local/lib/perl5/5.8.5/sun4-solaris/DynaLoader.pm line 230.
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/40listfields.t line 57
t/40listfields.....dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-18
Failed 18/18 tests, 0.00% okay
t/40nulls..........install_driver(mysql) failed: Can't load '/root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: ld.so.1: /usr/local/bin/perl: fatal: relocation error: file /root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so: symbol mysql_get_parameters: referenced symbol not found at /usr/local/lib/perl5/5.8.5/sun4-solaris/DynaLoader.pm line 230.
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/40nulls.t line 50
t/40nulls..........dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-11
Failed 11/11 tests, 0.00% okay
t/40numrows........install_driver(mysql) failed: Can't load '/root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: ld.so.1: /usr/local/bin/perl: fatal: relocation error: file /root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so: symbol mysql_get_parameters: referenced symbol not found at /usr/local/lib/perl5/5.8.5/sun4-solaris/DynaLoader.pm line 230.
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/40numrows.t line 59
t/40numrows........dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-25
Failed 25/25 tests, 0.00% okay
t/50chopblanks.....install_driver(mysql) failed: Can't load '/root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: ld.so.1: /usr/local/bin/perl: fatal: relocation error: file /root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so: symbol mysql_get_parameters: referenced symbol not found at /usr/local/lib/perl5/5.8.5/sun4-solaris/DynaLoader.pm line 230.
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/50chopblanks.t line 57
t/50chopblanks.....dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-35
Failed 35/35 tests, 0.00% okay
t/50commit.........install_driver(mysql) failed: Can't load '/root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: ld.so.1: /usr/local/bin/perl: fatal: relocation error: file /root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so: symbol mysql_get_parameters: referenced symbol not found at /usr/local/lib/perl5/5.8.5/sun4-solaris/DynaLoader.pm line 230.
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/50commit.t line 64
t/50commit.........dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-30
Failed 30/30 tests, 0.00% okay
t/60leaks..........skipped
all skipped: $ENV{SLOW_TESTS} is not set or Proc::ProcessTable not installed
t/ak-dbd...........install_driver(mysql) failed: Can't load '/root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: ld.so.1: /usr/local/bin/perl: fatal: relocation error: file /root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so: symbol mysql_get_parameters: referenced symbol not found at /usr/local/lib/perl5/5.8.5/sun4-solaris/DynaLoader.pm line 230.
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/ak-dbd.t line 59
t/ak-dbd...........dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-90
Failed 90/90 tests, 0.00% okay
t/akmisc...........Had to create DBD::mysql::dr::imp_data_size unexpectedly at /usr/local/lib/perl5/site_perl/5.8.5/sun4-solaris/DBI.pm line 1161.
Use of uninitialized value in subroutine entry at /usr/local/lib/perl5/site_perl/5.8.5/sun4-solaris/DBI.pm line 1161.
Can't locate object method "connect" via package "Mysql" at /root/.cpan/build/DBD-mysql-2.9004/blib/lib/Mysql.pm line 71.
t/akmisc...........dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-351
Failed 351/351 tests, 0.00% okay
t/dbdadmin.........install_driver(mysql) failed: Can't load '/root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: ld.so.1: /usr/local/bin/perl: fatal: relocation error: file /root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so: symbol mysql_get_parameters: referenced symbol not found at /usr/local/lib/perl5/5.8.5/sun4-solaris/DynaLoader.pm line 230.
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/dbdadmin.t line 74
t/dbdadmin.........dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-21
Failed 21/21 tests, 0.00% okay
t/insertid.........install_driver(mysql) failed: Can't load '/root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: ld.so.1: /usr/local/bin/perl: fatal: relocation error: file /root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so: symbol mysql_get_parameters: referenced symbol not found at /usr/local/lib/perl5/5.8.5/sun4-solaris/DynaLoader.pm line 230.
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/insertid.t line 13
t/insertid.........dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-12
Failed 12/12 tests, 0.00% okay
t/mysql............Can't load '/root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: ld.so.1: /usr/local/bin/perl: fatal: relocation error: file /root/.cpan/build/DBD-mysql-2.9004/blib/arch/auto/DBD/mysql/mysql.so: symbol mysql_get_parameters: referenced symbol not found at /usr/local/lib/perl5/5.8.5/sun4-solaris/DynaLoader.pm line 230.
at /root/.cpan/build/DBD-mysql-2.9004/blib/lib/Mysql.pm line 13
Compilation failed in require at /root/.cpan/build/DBD-mysql-2.9004/blib/lib/Mysql.pm line 13.
Compilation failed in require at t/mysql.t line 34.
BEGIN failed--compilation aborted at t/mysql.t line 34.
t/mysql............dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-68
Failed 68/68 tests, 0.00% okay
t/mysql2...........Had to create DBD::mysql::dr::imp_data_size unexpectedly at /usr/local/lib/perl5/site_perl/5.8.5/sun4-solaris/DBI.pm line 1161.
Use of uninitialized value in subroutine entry at /usr/local/lib/perl5/site_perl/5.8.5/sun4-solaris/DBI.pm line 1161.
Can't locate object method "connect" via package "Mysql" at /root/.cpan/build/DBD-mysql-2.9004/blib/lib/Mysql.pm line 71.
t/mysql2...........dubious
Test returned status 255 (wstat 65280, 0xff00)
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
t/00base.t 255 65280 5 4 80.00% 4-5
t/10dsnlist.t 255 65280 9 18 200.00% 1-9
t/20createdrop.t 255 65280 5 10 200.00% 1-5
t/30insertfetch.t 255 65280 11 22 200.00% 1-11
t/40bindparam.t 255 65280 28 56 200.00% 1-28
t/40blobs.t 255 65280 11 22 200.00% 1-11
t/40listfields.t 255 65280 18 36 200.00% 1-18
t/40nulls.t 255 65280 11 22 200.00% 1-11
t/40numrows.t 255 65280 25 50 200.00% 1-25
t/50chopblanks.t 255 65280 35 70 200.00% 1-35
t/50commit.t 255 65280 30 60 200.00% 1-30
t/ak-dbd.t 255 65280 90 180 200.00% 1-90
t/akmisc.t 255 65280 351 702 200.00% 1-351
t/dbdadmin.t 255 65280 21 42 200.00% 1-21
t/insertid.t 255 65280 12 24 200.00% 1-12
t/mysql.t 255 65280 68 136 200.00% 1-68
t/mysql2.t 255 65280 ?? ?? % ??
1 test skipped.
Failed 17/18 test scripts, 5.56% okay. 727/730 subtests failed, 0.41% okay.
make: *** [test_dynamic] Error 2
[DBD-mysql-2.9004]#

Options: ReplyQuote


Subject
Written By
Posted
MySQL, Solaris 9 and DBD::mysql
December 07, 2004 05:13PM
June 05, 2006 10:49AM
June 05, 2006 01:10PM
March 07, 2005 12:57PM
March 07, 2005 12:58PM
February 14, 2006 10:32AM
October 24, 2007 08:59AM
November 17, 2007 07:58PM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.