in reply to Installing DBD problems

from what i can tell, that make output it fine. Did make test result in some sort of dubious output ?
The requirements change because they don't know what they want, or how much they own you.

Replies are listed 'Best First'.
Re: Re: Installing DBD problems
by costas (Scribe) on Oct 16, 2001 at 13:12 UTC
    Here is the results for make test. Can you see why installation went wrong?
    PERL_DL_NONLAZY=1 /usr/bin/perl -Iblib/arch -Iblib/lib -I/usr/lib/perl +5/5.6.1/i686-linux -I/usr/lib/perl5/5.6.1 -e 'use Test::Harness qw(&r +untests $verbose); $verbose=0; runtests @ARGV;' t/*.t t/00base............install_driver(mysql) failed: Can't load 'blib/arc +h/auto/DBD/mysql/mysql.so' for module DBD::mysql: blib/arch/auto/DBD/ +mysql/mysql.so: undefined symbol: mysql_store_result at /usr/lib/perl +5/5.6.1/i686-linux/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 expecte +d 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 'blib/arc +h/auto/DBD/mysql/mysql.so' for module DBD::mysql: blib/arch/auto/DBD/ +mysql/mysql.so: undefined symbol: mysql_store_result at /usr/lib/perl +5/5.6.1/i686-linux/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 expecte +d at t/10dsnlist.t line 45 t/10dsnlist.........dubious + Test returned status 255 (wstat 65280, 0xff00) DIED. FAILED tests 1-3 Failed 3/3 tests, 0.00% okay t/20createdrop......install_driver(mysql) failed: Can't load 'blib/arc +h/auto/DBD/mysql/mysql.so' for module DBD::mysql: blib/arch/auto/DBD/ +mysql/mysql.so: undefined symbol: mysql_store_result at /usr/lib/perl +5/5.6.1/i686-linux/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 expecte +d 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 'blib/arc +h/auto/DBD/mysql/mysql.so' for module DBD::mysql: blib/arch/auto/DBD/ +mysql/mysql.so: undefined symbol: mysql_store_result at /usr/lib/perl +5/5.6.1/i686-linux/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 expecte +d 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 'blib/arc +h/auto/DBD/mysql/mysql.so' for module DBD::mysql: blib/arch/auto/DBD/ +mysql/mysql.so: undefined symbol: mysql_store_result at /usr/lib/perl +5/5.6.1/i686-linux/DynaLoader.pm line 206. 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 expecte +d at t/40bindparam.t line 64 t/40bindparam.......dubious + Test returned status 255 (wstat 65280, 0xff00)
      I do not usually work on Linux, but on Solaris/HP/SGI/etc, this is sometimes caused by not having the MySQL .so (mysql.so) file in the LD_LIBRARY_PATH environment variable. I would check $LD_LIBRARY_PATH and $SHLIB_PATH, and make sure that both contain the directory your mysql library is in (not sure which of the two environment variables is used by Linux.)

      Also, and i hate to say this, but another test is to run make install, and then try to use the driver. I have seen the DBD::Sybase driver fail 90% of tests, and still work once installed (usually because of path setups).
        I ran make install and something seems to have improved. When I run the script
        use strict; use DBI; #probe DBI for available drivers my @drivers = DBI->available_drivers(); ##iterate through drivers and list the data source for each one foreach my $driver (@drivers) { print "Driver: $driver<br>"; if ($driver ne "Proxy" && $driver ne "Multiplex") ##DBD:Proxy and +DBD::Multiplex have problem with datasources { my @datasources = DBI->data_sources($driver); foreach my $datasource (@datasources) { print "\tData Source is $datasource<br>"; } } print "\n"; }

        i get the following
        Driver: ExampleP Data Source is dbi:ExampleP:dir=. Driver: Proxy Driver: mysql


        However, I am a bit suspect as make test still returns errors (as in previous post) and I cant get a DBD-mysql (which used to work on a differen setup) script to run succesfully.

        I want to try adding the lib path to the environmental variables but am a little uncertain as to how to do this. Could you point me in the right direction with regards to adding to env vars.

        thankyou in advance