This is the mail archive of the
mailing list for the GCC project.
Re: Building LyX 1.2.0 on HP-UX 11.11 with G++ 3.2
- From: Jeff Law <law at porcupine dot slc dot redhat dot com>
- To: gcc at gcc dot gnu dot org
- Date: Thu, 22 Aug 2002 13:17:07 -0600
- Subject: Re: Building LyX 1.2.0 on HP-UX 11.11 with G++ 3.2
- Reply-to: law at redhat dot com
In message <20020822114834.B9686@oolong.il.thewrittenword.com>, Albert Chin wri
>What's odd is that the 3.2-prerelease provided by HP works fine. I
>don't necessarily think binutils is the problem. I replaced the 'as' I
>built with the one provided in their package and have the same
>problem. So, GCC must be emitting the 't'.
The underlying *object file format* can't handle weak symbols. Any attempt
to use them will ultimately fail.
[ ... ]
>$ g++ -v
>Reading specs from /usr/local/lib/gcc-lib/hppa1.1-hp-hpux11.00/3.2/specs
>Configured with: ../gcc/configure --enable-languages=c,c++
>--with-ld=/usr/ccs/bin/ld --with-gnu-as --enable-libstdcxx-v3
>I rebuild the offending source with -s and compared the .s files from
>both compilers. I get lots of:
>- .weak _ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
>- .EXPORT _ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_,ENTRY,
>+ .PARAM _ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_,PRIV_LE
Looks like they (HP) are using aborted code -- we tried to make SOM
secondary definitions masquerade as weak symbols, but in the end it won't
work due to limitations of secondary definitions. Trust me, if they're
emitting .weak for SOM, it's going to break -- it's just a matter of time.
Of course, the HP provided binaries for GNU tools have always been broken in
various ways -- I strongly recommend against using them.