PATCH: Put libunwind.a in libgcc_s.so: versioning of _Unwind_*() symbols
David Mosberger
davidm@napali.hpl.hp.com
Wed Apr 21 16:12:00 GMT 2004
>>>>> On Wed, 21 Apr 2004 07:35:54 -0700, "H. J. Lu" <hjl@lucon.org> said:
HJ> On Tue, Apr 20, 2004 at 11:38:36PM -0700, Jim Wilson wrote:
>> On Tue, 2004-04-20 at 22:57, H. J. Lu wrote: > This patch puts
>> libunwind.a in libgcc_s.so.1. The test result is at > We can do
>> it on ia64 since PIC is default on ia64.
>> IA-64 code is PIC by default. However, it is not true that
>> static library code and shared library code are the same. There
>> are differences because of the IA-64 ABI, for instance, the rules
>> that say "own" data can be put in the small data section, but
>> what qualifies as "own" data is different for shared libraries
>> and static libraries. This stuff is controlled by the -fpic
>> option. You must use -fpic for all code that goes into a shared
>> library. Note: -fpic has always meant compile this code for
>> shared libraries, this is even true on systems like IA-64 where
>> code is PIC by default. There is no guarantee that code in
>> libunwind.a was compiled with -fpic. I don't see how this can
>> work.
HJ> We can always require to compile the static libunwind library
HJ> with -fpic.
I really do not think this is the right approach.
--david
More information about the Gcc
mailing list