linux-l: gcc => a.out

Oliver Bandel oliver at first.in-berlin.de
Di Feb 15 10:04:40 CET 2000


Hi!

On Mon, 14 Feb 2000, Michael Wiedmann wrote:

> Oliver Bandel (oliver at first.in-berlin.de) wrote:
>  
> > Im makefile hatte ich noch folgendes ergänzend eingetragen:
> > 
> > -Xlinker -F -Xlinker a.out-i386-linux
> > 
> > Die Option "a.out-i386-linux" hatte mir objdump -i ausgegeben.
> 
> Allerdings sagt mir mein ´man ld´ zu deinem ´-F name´:
> 
>  When creating an ELF shared object, set the  inter­
>  nal  DT_FILTER  field  to the specified name.  This
>  tells the dynamic linker that the symbol table  of
>  the shared object should be used as a filter on the
>  symbol table of the shared object name.     

Aha, verstehe erstens nichts und zweitens habe ich das DT_FILTER
nicht in der manpage und auch nicht im info.

> 
> hat also reichlich wenig mit dem zu tun, was du erreichen willst.
> 
> Schau dir mal ´-oformat output-format´ an...
> 
> > Das ganze wird auch ohne Murren compiliert; allerdings
> > sagt mir "file", es handele sich um ein ELF-Format.
> 
> Kein Wunder, entspricht dem erwarteten Verhalten.

Also, das mit dem DT_FILTER fand ich nicht in den manpages.
Die sind ja auch mit den Versionen der Programme evolviert.

> 
> > Wo also kann es haken?
> 
> man page richtig lesen.

Oha. Danke. ;-)

Mit dem -oformat habe ich  jetzt aber immerhin eine Meldung
erhalten ("could not read symbols"), die die Shared-Lib
annörgelt. Das ist also der richtige Weg.

Also nochmal ein nicht-ironisches Danke.

Tschüß,
   Oliver



Mehr Informationen über die Mailingliste linux-l