SuSE GmbH

SuSE Support-Datenbank

Titel: aout-Programme auf einem ELF-System entwickeln

----------

Übersicht o Stichwortsuche o History o Versionen o Kategorien o Alle Artikel
English

----------

aout-Programme auf einem ELF-System entwickeln

Es ist unter gewissen Umständen notwendig, auch auf einem ELF-System das ältere aout-Format zu erzeugen, z.B. wenn man Bibliotheken benutzt, die nur im alten aout-Format vorhanden sind.

Der gcc2.7.2 compiliert per default im (neuen) ELF-Format. Werden jetzt Libraries im (älteren) aout-Format dazugelinkt, so können beim Linken die Referenzen nicht aufgelöst werden.

In diesem Fall müssen also alle Objektdateien im aout-Format übersetzt werden. Dazu folgende Compilerschalter setzen:

Beim Compilieren:

	-b i486-linuxaout
Beim Linken:
    -mi386linux
Wenn der Linkaufruf über gcc gemacht wird, ebenfalls
    -b i486-linuxaout
angeben. Beispiel-Makefile: Es wird die aout-Lib libsql.a dazugelinkt. prog_elf geht schief, prog_aout funktioniert. all: prog_aout prog_elf prog_elf: yardtest.c Makefile gcc -c -I/usr/lib/YARD/include yardtest.c -o yardtest.o gcc -L/lib yardtest.o /usr/lib/YARD/lib/libsql.a \ /usr/lib/YARD/lib/libbasic.a /usr/lib/YARD/lib/sqlnetd.a -o $@ file $@ ldd $@ prog_aout: yardtest.c Makefile gcc -b i486-linuxaout -c -I/usr/lib/YARD/include yardtest.c \ -o yardtest.o gcc -b i486-linuxaout -L/lib yardtest.o /usr/lib/YARD/lib/libsql.a \ /usr/lib/YARD/lib/libbasic.a \ /usr/lib/YARD/lib/sqlnetd.a -o $@ file $@ ldd $@

----------

Stichwörter: GCC, LINKEN, AOUT, ELF, LINUXAOUT, COMPILIEREN

----------

Kategorien: Kernel

----------

Übersicht o Stichwortsuche o History o Versionen o Kategorien o Alle Artikel
English

----------

SDB-kfr_29, Copyright SuSE GmbH, Nuremberg, Germany - Version: 09. Apr 1996
SuSE GmbH - Zuletzt generiert: 03. Oct 1999 22:33:19 by maddin with sdb_gen 1.00.0