[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: 64-Bit-Kernel und 32-Bit-Userland: Pros und Kontras



Dieter Rohlfing <dr-erc@gmx.net> wrote:

> Wenn eine dieser drei Dateien über die Anweisung "#include
> <include-file.h>" inkludiert wird, dann wird sie meines Wissens im
> Standard-Verzeichnis /usr/include gesucht. Die Datei stdio.h zum
> Beispiel gibt es im Source-Tree zu linux-2.6-2.6.18.dfsg.1
> (Standard-Kernel von etch) nur ein einziges Mal, nämlich in
> arch/powerpc/boot/stdio.h. stdio.h wird aber auch in vielen Dateien
> außerhalb der powerpc-Architektur inkludiert, und dann nämlich aus
> /usr/include. Die Dateien in diesem Verzeichnis sind jedoch alle
> architektur-spezifisch. So weit ich weiß. Sollte ich da falsch liegen,
> dann lasse ich mich gerne eines Besseren belehren. Man lernt ja
> bekanntlich nie aus. :-))

Bitte beachten: Im Kernel-Source sind auch Build-Tools enthalten, die
_natürlich_ für die jeweilige Plattform kompiliert werden müssen, auf
der der Compiler läuft.

Dort findet man dann natürlich Dinge wie #include <stdio.h> etc.

Im Kernel-Code aber selbst sind _KEINE_ Referenzen zu externen Headern in
irgendeiner Form vorhanden und dürfen auch gar nicht vorhanden sein.

Das ist ja auch gerade die Komplexität des Cross-Compiles, dass man hier
zwischen HOST_CC (für die Tools) und dem CC (für den Kernel)
unterscheiden muss.

Der HOST_CC muss im AMD64-auf-i386-Fall ohne Parameter aufgerufen werden,
damit die Tools nativ-32bittig kompiliert werden, der CC aber mit "-m64",
damit die Kernel-Sourcen dann 64bittig umgesetzt werden.

> Das paßt auch zu den Auskünften auf debian-amd64, wo ich eine ähnliche Anfrage
> gestellt habe. Dort wurde mir von jedem bestätigt, daß man entweder
> - in einem 32-bit-System 64-bit-Libraries/Headers braucht oder
> - von einem 32-bit-System ein chroot in ein 64-bit-System macht oder
> - mit einem gebooteten 64-bit-System arbeitet

Bitte Message-ID der Aussage angeben, ich kann das so nicht glauben, da
es der Wirklichkeit widerspricht.

S°

-- 
Sven Hartge -- professioneller Unix-Geek
Meine Gedanken im Netz: http://www.svenhartge.de/


Reply to: