[Bug target/35365] New: dlopen fails because of missing _Jv_RegisterClasses under HP-UX 11.11
ams at toroid dot org
gcc-bugzilla@gcc.gnu.org
Mon Feb 25 10:48:00 GMT 2008
I build the DBD::mysql Perl module under HP-UX 11.11 on an RP3440 machine with
GCC 4.2.1. The link looked like this:
LD_RUN_PATH="/usr/local/mysql/lib" /opt/perl_64/bin/perl myld gcc -shared
-static-libgcc -fPIC -L/lib/pa20_64 dbdimp.o mysql.o -o
blib/arch/auto/DBD/mysql/mysql.sl -L/usr/local/mysql/lib
-L/opt/hp-gcc64-4.2.1/lib/gcc/hppa64-hp-hpux11.11/4.2.1 -lmysqlclient -lz -lnsl
-lm -lgcc
The module built fine, but its "make test" failed with the following error.
/usr/lib/pa20_64/dld.sl: Unsatisfied code symbol '_Jv_RegisterClasses' in load
module '/mnt/DBD-mysql-4.006/blib/arch/auto/DBD/mysql/mysql.sl'
I solved this problem by linking in a stub.o that contained an empty definition
of _Jv_RegisterClasses. Apparently the problem is that the HP-UX dynamic linker
does not just ignore unresolvable weak symbols as it should, so it's not a gcc
bug, but perhaps the symbol should be exported by default, since the weak
definition has already been removed for HP-UX in this patch:
http://gcc.gnu.org/ml/gcc-patches/2006-04/msg00327.html
--
Summary: dlopen fails because of missing _Jv_RegisterClasses
under HP-UX 11.11
Product: gcc
Version: 4.2.1
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: ams at toroid dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35365
More information about the Gcc-bugs
mailing list