Bo-Ying Lu wrote:
> The Cu provides more info about this error:
>>
>> One more thing ? we see the following warnings while building the 
>> acroread binary on Solaris x86 (These come only with the Sun native 
>> linker. GNU?s linker does not give these warnings).
>>
>> ld: warning: global symbol `_GLOBAL_OFFSET_TABLE_' has non-global binding:
>>
>>         (file libBIB.so value=LOCL);
>>
>>  
>>
>> This happens for a few of the libraries (which as the error indicates 
>> have the GLOBAL_OFFSET_TABLE as a local symbol. Do you think these 
>> warnings could have anything to do with the GDB issue?
> 
> Bo-Ying Lu wrote:
>> Ali,

Yes, it does seem odd that the GOT symbol for these objects has a non-global
binding. The Solaris linker validates symbols for input objects, and
this message comes from that loop. The interesting link, in terms of
answering this question, is the one that produced libBIB.so, rather than
this one (which is using it).

I don't think you can conclude that libBIB is OK based on the fact
that the GNU ld doesn't complain. More likely, this is just something
it doesn't report.

Here are some questions for you to explore:

        - Are these problems 64-bit only, or do they occur
          with 32-bit X86 code too?

        - Is this C++ code (rather than pure C), and if so, are they
          setting any problematic flags like -Bsymbolic?

        - Is there any assembly language involved?

        - Any "non-standard" object post-processing happening? Object
          dumping, purify-like tools, or anything like that?

        - Does the program run at all when not under a debugger?

As to the question about gdb specifically, there's not enough information
here to know. It seems that this object is odd in multiple ways, so there might
be any number of reasons why it fails.

All of which boils down to needing more information. Ideally, that would be
compiler/linker options used, answers to the questions above, and access to
the objects involved.

- Ali

Reply via email to