Mark Nickel wrote:
> t/00base............dubious
> Test returned status 215 (wstat 55040, 0xd700)
> DIED. FAILED tests 4-5
> /usr/lib/dld.sl: Unresolved symbol: __udivdi3 (code) from
> /usr/local/lib/libmys
> qlclient.sl.6
> install_driver(mysql) failed: Can't load
> '../blib/arch/auto/DBD/mysql/mysql.sl'
> for module DBD::mysql: Unresolved external at
> /opt/perl5/lib/5.00502/PA-RISC1.1/
> DynaLoader.pm line 168.
>From the README:
KNOWN PROBLEMS
1.) If the MySQL binaries are compiled with gcc or
egcs (as the precompiled binaries are), but your
Perl is using another compiler, it is likely that
you receive an error message like the following
when running "make test":
t/00base............install_driver(mysql) failed: Can't
load
'../blib/arch/auto/DBD/mysql/mysql.so' for module
DBD::mysql:
../blib/arch/auto/DBD/mysql/mysql.so: undefined symbol:
_umoddi3
at
/usr/local/perl-5.005/lib/5.005/i586-linux-thread/DynaLoader.pm
line 168.
This means, that your linker doesn't include
libgcc.a. You have the following options:
a) Either recompile Perl or Mysql, it
doesn't matter which. The important
thing is that you use the same
compiler for both. This is definitely
the recommended solution in the long
term.
b) A simple workaround is to include
libgcc.a manually. Do a "make clean"
and "make" and in the output wait for
a line like
LD_RUN_PATH="/usr/lib/mysql:/lib" egcs -o
../blib/arch/auto/DBD/mysql/mysql.so -shared
-L/usr/local/lib
dbdimp.o mysql.o -L/usr/lib/mysql
-L/usr/lib/mysql
-lmysqlclient -lm
Repeat the same line in the shell by
adding
-L/usr/lib/gcc-lib/i386-redhat-linux/gcc-2.7.2.3 -lgcc
where the directory is the location of
libgcc.a. The best choice for locating
this file is executing
gcc --print-libgcc-file
or
gcc -v
--
Jochen Wiedmann joe@stripped
A mathematician is an engine for converting coffee +49 7123 14887
into theorems. (Hi, Lukas! :-)