make-kpkg + crosscompile (32bit unter 64bit OS)

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
Benutzeravatar
Lord_Carlos
Beiträge: 5578
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

make-kpkg + crosscompile (32bit unter 64bit OS)

Beitrag von Lord_Carlos » 05.04.2009 19:22:20

Hallo,
ich wollte mal mit meinem 64bit Debian ein Kernel für 32bit compilieren (i368).
Was muss ich da beachten? Einfach --arch i386 anhängen?
z.B.

Code: Alles auswählen

make-kpkg --initrd --revision=penis --arch i386 kernel_image kernel_headers 
make-kpkg hat auch noch eine --cross-compile funktion, wofür ist die?

Danke

Lord-carlos

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Re: make-kpkg + crosscompile (32bit unter 64bit OS)

Beitrag von Spasswolf » 05.04.2009 19:44:01

Ich hab das vor einiger Zeit mal umgekehrt gemacht [1], zuerst musst du mal eine passende .config erstellen mit:

Code: Alles auswählen

ARCH=i386 make xconfig (oder menuconfig)
Dann würde ich es so probieren:

Code: Alles auswählen

make-kpkg --initrd --arch i386 --cross-compile kernel_image kernel_headers

[1] http://debianforum.de/forum/viewtopic.php?f=33&t=79692

Benutzeravatar
Lord_Carlos
Beiträge: 5578
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

Re: make-kpkg + crosscompile (32bit unter 64bit OS)

Beitrag von Lord_Carlos » 05.04.2009 20:11:27

So ganz klappt das noch nicht:

Ich habe erst die debian config von [0] Runtergelden and nach .config gespeichert.

Code: Alles auswählen

ARCH=i386 make menuconfig
export CONCURRENCY_LEVEL=3
make-kpkg --initrd --revision=debian+mac80211+patch --arch i386 --cross-compile kernel_image kernel_headers
Da kommen jetzt aber ein paar fehler [1]
dpkg-architecture: Warnung: Angegebener GNU-Systemtyp i486-linux-gnu passt nicht auf gcc-Systemtyp x86_64-linux-gnu.
Bei [2] kann ich auch eine config für 486 runterladen, ich habe jetzt aber 686 genommen, liegt es vielleicht daran?

[0] http://merkel.debian.org/~jurij/2.6.29- ... 9-1-686.gz
[1] http://pastebin.com/f75d14bfe
[2] http://merkel.debian.org/~jurij/

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Re: make-kpkg + crosscompile (32bit unter 64bit OS)

Beitrag von Spasswolf » 05.04.2009 21:42:08

Ich habe etwas aus dem anderen Thread falsch kopiert, so sollte es aussehen:

Code: Alles auswählen

make-kpkg --initrd --arch i386 --cross-compile - kernel_image kernel_headers

Benutzeravatar
Lord_Carlos
Beiträge: 5578
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

Re: make-kpkg + crosscompile (32bit unter 64bit OS)

Beitrag von Lord_Carlos » 05.04.2009 22:17:48

Danke hat jetzt funktioniert. Aber tut das not das es trozdem mit amd64.deb endet?
Werde das Paket gleich mal in einer VM testen.

Edit: Jo, mit der force option geht es. Danke für die hilfe

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

Benutzeravatar
cirrussc
Beiträge: 6582
Registriert: 26.04.2007 19:47:06
Lizenz eigener Beiträge: MIT Lizenz

Re: make-kpkg + crosscompile (32bit unter 64bit OS)

Beitrag von cirrussc » 06.04.2009 03:14:19

Ich erstelle auf meinem Amd64 System den Kernel für einen Geode LX (i586).

Code: Alles auswählen

ARCH=i386 CONCURRENCY_LEVEL=2 make-kpkg --us --uc --cross-compile - --arch=i386 --revision=0.2 --append-to-version=-geode-lx800 --arch-in-name --bzimage kernel_image modules
Aber wie man das beseitigen kann, habe ich auch noch nicht herausgefunden:
Lord_Carlos hat geschrieben:Aber tut das not das es trozdem mit amd64.deb endet?
Werde das Paket gleich mal in einer VM testen.

Edit: Jo, mit der force option geht es. Danke für die hilfe
Gruß cirrussc
--------------------
„Der Mensch steigert zur Zeit die Nutzung dessen, was seiner Willkür unterliegt - und kommt sich sehr klug dabei vor.“ H. Gruhl

Antworten