Questions about runtime linking...

David Daney ddaney@avtrex.com
Tue May 18 18:14:00 GMT 2004
Daniel Jacobowitz wrote:

>On Tue, May 18, 2004 at 10:33:10AM -0700, David Daney wrote:
>  
>
>>Questions:
>>
>>What property of a symbol make it appear as a dynamic relocation entry?
>>
>>Why don't symbols from glibc appear in the dynamic relocation entries?
>>    
>>
>
>Symbols only referenced in the initial GOT do not necessarily appear in
>the list of dynamic relocations on MIPS.
>
>This is somewhat horrifying from a cross-platform-consistency
>perspective.
>  
>
Are you saying that a different mechanism is used for the relocations in 
the secondary GOTs, than those in the initial GOT?


>>How do I find where the relocations are for the undefined symbols from 
>>an objdump -T testapp listing?
>>    
>>
>
>Wherever objdump -R says - and also, sort of, at the appropriate offset
>in .got determined by the symbol index and the dynamic tags
>(DT_MIPS_GOTSYM?  Something like that.)
>  
>

Is there some way to get objdump and/or readelf to print these out?  Or 
is it emacs hexl mode for me?

>  
>
>>And for bonus points:  What would cause glibc's "__ctype_tolower" symbol 
>>to appear as a dynamic relocation entry (thus seeming to cause my 
>>problems), when normally it does not?
>>    
>>
>
>Reference from a secondary GOT?
>

I think this is likely the case, as the screwed up GOT entry comes at a 
higher address than the good ones.

>
>  
>
>>I apologize in advance if this is covered in some ELF FAQ somewhere that 
>>I have not found.
>>    
>>
>
>What linker version are you using?  It sounds like it's 2.14 and you
>should try this whole system again using 2.15, where I fixed a number
>of multi-GOT bugs.
>  
>
The H.J. Lu version..

$ mipsel-linux-ld --version
GNU ld version 2.14.90.0.5 20030722

I have 2.15, but am not currently using it for this build.  Perhaps it 
is time to upgrade...

David Daney.






More information about the Binutils mailing list