8 messages in com.mysql.lists.perlRe: Situation when testing Msql-Mysql...| From | Sent On | Attachments |
|---|---|---|
| Mark Nickel | 18 Jun 1999 13:59 | |
| Jochen Wiedmann | 21 Jun 1999 00:53 | |
| Jochen Wiedmann | 21 Jun 1999 01:16 | |
| Mark Nickel | 22 Jun 1999 08:57 | |
| Mark Nickel | 22 Jun 1999 13:58 | |
| Richard Spangenberg | 22 Jun 1999 14:12 | |
| Jochen Wiedmann | 25 Jun 1999 01:25 | |
| Jochen Wiedmann | 25 Jun 1999 09:37 |
| Subject: | Re: Situation when testing Msql-Mysql-Modules under HP-UX![]() |
|---|---|
| From: | Jochen Wiedmann (jo...@ispsoft.de) |
| Date: | 06/21/1999 12:53:38 AM |
| List: | com.mysql.lists.perl |
(This reply applies both to Mark and Stevens questions.)
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 jo...@ispsoft.de A mathematician is an engine for converting coffee +49 7123 14887 into theorems. (Hi, Lukas! :-)




