HP-UX 11.11 DBD-2.9004 Invalid Loader Fixup Error

"Briggs, Patrick" <[email protected]>
Newsgroups gmane.comp.db.mysql.perl
Message-ID <F0C10B9F28EC1C47B16BC2D75176919E10FBC9@TEC-EXCHANGE>
I am unable to compile DBD-mysql-2.9004 on HP-UX 11.11 using GCC 3.4.3
binary provided by the HP-UX Software Porting Archive Center.  I get an
error from the linker that says "Invalid loader fixup in text space needed
in output file for symbol "pipe_sig_handler" in input file
"/opt/mysql/lib/mysql/libmysqlclient.a(libmysql.o)"

I have compiled perl, mysql-4.1.8, and DBD all using GCC.  There is no mix
between CC and GCC in the code that I'm aware of.  Neither is there a mix of
64 vs 32 bit code that I know of.

gcc -v output:

Reading specs from /usr/local/lib/gcc/hppa2.0w-hp-hpux11.11/3.4.3/specs
Configured with: ./configure  : (reconfigured) ./configure  : (reconfigured)
./configure  : (reconfigured) ./configure  : (reconfigured) ./configure  :
(reconfigured) ./configure 
Thread model: single
gcc version 3.4.3

perl -v output:

Summary of my perl5 (revision 5 version 8 subversion 6) configuration:
  Platform:
    osname=hpux, osvers=11.11, archname=PA-RISC2.0-thread-multi
    uname='hp-ux n7016 b.11.11 u 9000800 618329343 unlimited-user license '
    config_args='-Dcc=gcc'
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=define use5005threads=undef useithreads=define
usemultiplicity=define
    useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
    use64bitint=undef use64bitall=undef uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='gcc', ccflags ='-D_POSIX_C_SOURCE=199506L -D_REENTRANT
-D_HPUX_SOURCE -mpa-risc-2-0 -fno-strict-aliasing -pipe -I/usr/local/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
    optimize='-O3',
    cppflags='-D_HPUX_SOURCE -D_POSIX_C_SOURCE=199506L -D_REENTRANT
-D_HPUX_SOURCE -mpa-risc-2-0 -fno-strict-aliasing -pipe
-I/usr/local/include'
    ccversion='', gccversion='3.4.3', gccosandvers='hpux11.11'
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='/usr/bin/ld', ldflags =' -L/usr/local/lib'
    libpth=/usr/local/lib /lib /usr/lib /usr/ccs/lib
    libs=-lnsl -lnm -lndbm -ldb -lmalloc -ldld -lm -lcrypt -lsec -lpthread
-lc
    perllibs=-lnsl -lnm -lmalloc -ldld -lm -lcrypt -lsec -lpthread -lc
    libc=/lib/libc.sl, so=sl, useshrplib=true, libperl=libperl.sl
    gnulibc_version=''
  Dynamic Linking:
    dlsrc=dl_hpux.xs, dlext=sl, d_dlsymun=undef, ccdlflags='-Wl,-E
-Wl,-B,deferred '
    cccdlflags='-fPIC', lddlflags='-b -L/usr/local/lib'


Characteristics of this binary (from libperl): 
  Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES
PERL_IMPLICIT_CONTEXT
  Built under hpux
  Compiled at Dec 19 2004 13:06:28
  @INC:
    /opt/perl5/lib/5.8.6/PA-RISC2.0-thread-multi
    /opt/perl5/lib/5.8.6
    /opt/perl5/lib/site_perl/5.8.6/PA-RISC2.0-thread-multi
    /opt/perl5/lib/site_perl/5.8.6
    /opt/perl5/lib/site_perl
    .

Output of compilation of DBD-mysql-2.9004:

perl Makefile.PL
I will use the following settings for compiling and testing:

  cflags        (mysql_config) = -I/opt/mysql/include/mysql -march=2.0
  libs          (mysql_config) = -L/opt/mysql/lib/mysql -lmysqlclient
-lcrypt -lnsl -lm -L/usr/local/lib -lz
  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'.

Checking if your kit is complete...
Looks good
Using DBI 1.46 (for perl 5.008006 on PA-RISC2.0-thread-multi) installed in
/opt/perl5/lib/site_perl/5.8.6/PA-RISC2.0-thread-multi/auto/DBI/
Writing Makefile for DBD::mysql
n7016:tec3712:/home/tec3712/software/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 -c  -I/opt/perl5/lib/site_perl/5.8.6/PA-RISC2.0-thread-multi/auto/DBI/
-I/opt/mysql/include/mysql -march=2.0 -D_POSIX_C_SOURCE=199506L -D_REENTRANT
-D_HPUX_SOURCE -mpa-risc-2-0 -fno-strict-aliasing -pipe -I/usr/local/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O3   -DVERSION=\"2.9004\"
-DXS_VERSION=\"2.9004\" -fPIC
"-I/opt/perl5/lib/5.8.6/PA-RISC2.0-thread-multi/CORE"   dbdimp.c
/opt/perl5/bin/perl -p -e "s/~DRIVER~/mysql/g"
/opt/perl5/lib/site_perl/5.8.6/PA-RISC2.0-thread-multi/auto/DBI//Driver.xst
> mysql.xsi
/opt/perl5/bin/perl /opt/perl5/lib/5.8.6/ExtUtils/xsubpp  -typemap
/opt/perl5/lib/5.8.6/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 -c  -I/opt/perl5/lib/site_perl/5.8.6/PA-RISC2.0-thread-multi/auto/DBI/
-I/opt/mysql/include/mysql -march=2.0 -D_POSIX_C_SOURCE=199506L -D_REENTRANT
-D_HPUX_SOURCE -mpa-risc-2-0 -fno-strict-aliasing -pipe -I/usr/local/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O3   -DVERSION=\"2.9004\"
-DXS_VERSION=\"2.9004\" -fPIC
"-I/opt/perl5/lib/5.8.6/PA-RISC2.0-thread-multi/CORE"   mysql.c
Running Mkbootstrap for DBD::mysql ()
chmod 644 mysql.bs
rm -f blib/arch/auto/DBD/mysql/mysql.sl
LD_RUN_PATH="/usr/local/lib" /opt/perl5/bin/perl myld /usr/bin/ld  -b
-L/usr/local/lib dbdimp.o mysql.o  -o blib/arch/auto/DBD/mysql/mysql.sl
-L/opt/mysql/lib/mysql -lmysqlclient -lcrypt -lnsl -lm -L/usr/local/lib -lz

/usr/bin/ld: Invalid loader fixup in text space needed in output file for
symbol "pipe_sig_handler" in input file
"/opt/mysql/lib/mysql/libmysqlclient.a(libmysql.o)"
chmod 755 blib/arch/auto/DBD/mysql/mysql.sl
chmod: can't access blib/arch/auto/DBD/mysql/mysql.sl
make: *** [blib/arch/auto/DBD/mysql/mysql.sl] Error 1

-- Patrick Briggs
Clinitech Information Resources, Inc.

This e-mail message, including any attachments, is for the sole use of the
intended recipient(s) and may contain confidential or privileged
information.  Any unauthorized review, use, disclosure or distribution is
prohibited.  If you are not the intended recipient, please contact the
sender by reply e-mail and destroy the message.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.