Kernel für amd64 auf i386-Architektur kompilieren

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
Benutzeravatar
McAldo
Moderator
Beiträge: 2069
Registriert: 26.11.2003 11:43:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Terra / Sol-System / Milchstraße

Kernel für amd64 auf i386-Architektur kompilieren

Beitrag von McAldo » 16.08.2004 12:33:41

Hallo

Ich versuche einen Kernel (2.4.27) für eine am64 (x86_64) Archiektur zu erstellen. Dies muß ich aber auf einer i386-Architektur machen. Nun habe ich gelesen, dass man bei make-kpkg mit --arch eine andere Architektur angeben kann.

Wenn dann der Kernel mit make-dpkg --arch amd64 kernel_image ... kompiliert werden soll kommt folgende Fehlermeldung:

# fakeroot make-kpkg --arch am64 kernel_image --revision=0.1
unknown Debian architecture am64, you must specify GNU system type, too at /usr/bin/dpkg-architecture line 198.
unknown Debian architecture am64, you must specify GNU system type, too at /usr/bin/dpkg-architecture line 198.
unknown Debian architecture am64, you must specify GNU system type, too at /usr/bin/dpkg-architecture line 198.
unknown Debian architecture am64, you must specify GNU system type, too at /usr/bin/dpkg-architecture line 198.
unknown Debian architecture am64, you must specify GNU system type, too at /usr/bin/dpkg-architecture line 198.
unknown Debian architecture am64, you must specify GNU system type, too at /usr/bin/dpkg-architecture line 198.
unknown Debian architecture am64, you must specify GNU system type, too at /usr/bin/dpkg-architecture line 198.
unknown Debian architecture am64, you must specify GNU system type, too at /usr/bin/dpkg-architecture line 198.
/usr/share/kernel-package/rules:1291: *** Error. I do not know where the kernel image goes to [kimagedest undefined] The usual case for this is that I could not determine which arch or subarch tihs machine belongs to. Please specify a subarch, and try again.. Stop.


Wie kann ich das Problem beheben?

Gruß
McAldo
Achte auf deine Gedanken, denn sie werden Worte.
Achte auf deine Worte, denn sie werden Handlungen.
Achte auf deine Handlungen, denn sie werden Gewohnheiten.
Achte auf deine Gewohnheiten, denn sie werden dein Charakter.
Achte auf deinen Charakter, denn er wird dein Schicksal.
(Talmud)

Benutzeravatar
Tate
Beiträge: 200
Registriert: 27.04.2004 17:02:45
Wohnort: Bern, Switzerland
Kontaktdaten:

Beitrag von Tate » 16.08.2004 13:10:56

hi

Code: Alles auswählen

# fakeroot make-kpkg --arch am64 kernel_image --revision=0.1 
bin ich falsch oder müsste das amd64 heissen?

greetz tate
Welcome To The Real World!!!
- - : : ¦ ¦ http://www.forall.ch ¦ ¦ : : - -

Benutzeravatar
McAldo
Moderator
Beiträge: 2069
Registriert: 26.11.2003 11:43:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Terra / Sol-System / Milchstraße

Beitrag von McAldo » 16.08.2004 13:21:02

Hm..., es fehlte ein d, es werden nun andere Fehlermeldungen gezeigt:

dpkg-architecture: warning: Specified GNU system type x86_64-linux does not match gcc system type i386-linux.
dpkg-architecture: warning: Specified GNU system type x86_64-linux does not match gcc system type i386-linux.
dpkg-architecture: warning: Specified GNU system type x86_64-linux does not match gcc system type i386-linux.
dpkg-architecture: warning: Specified GNU system type x86_64-linux does not match gcc system type i386-linux.
dpkg-architecture: warning: Specified GNU system type x86_64-linux does not match gcc system type i386-linux.
dpkg-architecture: warning: Specified GNU system type x86_64-linux does not match gcc system type i386-linux.
dpkg-architecture: warning: Specified GNU system type x86_64-linux does not match gcc system type i386-linux.
dpkg-architecture: warning: Specified GNU system type x86_64-linux does not match gcc system type i386-linux.
/usr/bin/make -f /usr/share/kernel-package/rules real_stamp_image

aber das kompilieren wird begonnen. Bricht dann aber mit :

cp arch/x86_64/boot/bzImage debian/tmp-image/boot/vmlinuz-2.4.27
cp: cannot stat `arch/x86_64/boot/bzImage': No such file or directory
make[1]: *** [real_stamp_image] Error 1
make[1]: Leaving directory `/home/user/linux-2.4.27
make: *** [kernel-image-deb] Error 2

ab.

Was nun?

McAldo
Achte auf deine Gedanken, denn sie werden Worte.
Achte auf deine Worte, denn sie werden Handlungen.
Achte auf deine Handlungen, denn sie werden Gewohnheiten.
Achte auf deine Gewohnheiten, denn sie werden dein Charakter.
Achte auf deinen Charakter, denn er wird dein Schicksal.
(Talmud)

Benutzeravatar
pdreker
Beiträge: 8298
Registriert: 29.07.2002 21:53:30
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Nürnberg

Beitrag von pdreker » 16.08.2004 14:49:56

Du brauchst einen Compiler, der auf i386 läuft, aber AMD64 Code erzeugt (Cross Compiler). gcc sollte das können, aber nicht in der Debian Version, wo das aus Platzgründen nicht aktiviert zu sein scheint...

So wie es aussieht bedeutet das, dass Du einen entsprechenden gcc selber compilieren und unter /usr/local installieren musst. Das ist ein ganz ordentlicher Brocken Arbeit, so dass es einfach sein könnte, das irgendwie (Knoppix???) auf dem AMD64 System selbst zu machen...

Google: "i386 amd64 gcc cross compiler" und Variationen davon

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de

Benutzeravatar
McAldo
Moderator
Beiträge: 2069
Registriert: 26.11.2003 11:43:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Terra / Sol-System / Milchstraße

Beitrag von McAldo » 16.08.2004 16:05:55

Der Aufwand ist dann doch etwas groß.
So wie es aussieht veträgt sich das autofsModul nicht mit dem autofs-Daemon.

Unter Knoppix ließ sich das auch nicht machen, da das System nicht richtig gestartet wurde. Auch fehlten einige ncurces.
Naja, nun lasse ich es erstmal.

Das Problem unter http://www.debianforum.de/forum/viewtop ... highlight= wird nun erstmal weiter bestehen. :-(

Danke trotzdem

McAldo
Achte auf deine Gedanken, denn sie werden Worte.
Achte auf deine Worte, denn sie werden Handlungen.
Achte auf deine Handlungen, denn sie werden Gewohnheiten.
Achte auf deine Gewohnheiten, denn sie werden dein Charakter.
Achte auf deinen Charakter, denn er wird dein Schicksal.
(Talmud)

Antworten