Hallo Gruppe,

ich formuliere meine Fragestellung mal um:

Ich habe eine amd64 Debian jessie Plattform. Auf der lade ich einen Vanilla
Kernel und lege den in zwei Verzeichnissen einmal für amd64 und einmal für
i386 ab. Da rein kopiere ich je eine passend vorbereitete .config. Dann wird
der amd64 Kern gebaut mit 'make oldconfig && make -j4'. Für den i386er Kern
wähle ich stattdessen 'make ARCH=i386 oldconfig && make -j4'. Das liefert
mir unter den jeweiligen Plattformen laufende Kerne. Lassen wir mal weg,
dass ich daraus mühevoll noch DEB-Pakete baue, was sicher einfacher geht als
mit meinem Scripthaufen.

Nun habe ich die Anforderung, speziell für den i386 Zweig, auch die Header
mitzuliefern. Egal welches Werkzeug ich da zur Paketierung verwende, zu den
Headern gehören offenbar auch ein paar Tools wie z.B scripts/basic/fixdep.
Leider sind das nach o.g. Methode für i386 trotzdem 64-bit ELF. Dieser
Umstand führt dazu, dass Drittsoftware auf der Zielplattform dann mit diesen
Headern und Tools nicht in der Lage ist, sich zu installieren / seine Module
zu bauen.

Nun habe ich den Befehl/Alias 'linux32' gefunden und den o.g. 'make'
Befehlen vorangestellt - das macht leider keinen Unterschied.
Auch habe ich noch keine für mich verständliche und funktionierende
Anleitung gefunden, wie ich mir eine vernünftige cross-compile-Umgebung in
debian einrichte.

Hat denn hier keiner einen Tipp für mich, wie ich einen i386 Kernel komplett
und sauber in einer amd64 Umgebung bauen kann?



Mit freundlichen Grüßen / Kind regards
     Ronny Seffner
--
Ronny Seffner  |  Alter Viehweg 1  |  01665 Klipphausen
www.seffner.de  |  ro...@seffner.de  |  +49 35245 72950
7EA62E22D9CC4F0B74DCBCEA864623A568694DB8
> -----Ursprüngliche Nachricht-----
> Von: Lug-dd [mailto:lug-dd-boun...@mailman.schlittermann.de] Im Auftrag
> von Ronny Seffner
> Gesendet: Dienstag, 7. März 2017 19:11
> An: lug-dd@mailman.schlittermann.de
> Betreff: Debian Paketierung - Kernel
> 
> Hallo Gruppe,
> 
> in der vagen Vermutung es kennst sich neben Heiko noch einer mit DEB
> Paketen
> aus, frage ich mal hier statt direkt.
> 
> Ich baue aus den Vanilla-Sourcen auf einer amd64 Plattform Kerne für
> verschiedene Plattformen ('make ARCH='). Dazu habe ich ein Script, welches
> mir das Ergebnis mit ein paar Steuerdateien (CONTROL, changelog, postinst
> usw.) mittels 'dpkg-deb' zusammenpappt. Resultierend daraus habe ich DEB
> Pakete, die einen installierbaren Kernel enthalten. Noch habe ich Probleme
> mir das changelog mittels apt-listchanges bei der Installation anzeigen zu
> lassen, aber dazu an andere Stelle vielleicht mehr.
> 
> Nun gibt es Zielsysteme mit der Anforderung, nachträglich Software zu
> installieren, die Kernel-Header erfordert. Nun möchte ich mein Zeug
> dahingehend erweitern und denke, da muss doch was mit den fertigen Tools
> gehen.
> 
> 'make-kpkg' gilt als veraltet - ok.
> Mit 'make kernel_headers' komme ich auch nicht so recht weiter.
> Dokumentationen von 'make deb-pkg' gehen immer davon aus, dass ich als
> Quellpaket auch schon ein DEB installiert habe. Ich habe es trotzdem gegen
> meine Vanillaquellen angewendet und erhalte einen installierbaren Kern und
> auch ein header-Paket. Leider greift die Drittsoftware dann auf
> scripts/basic/fixdep zu und das ist ein amd64 Binary. Auch ein Kompilieren
> direkt in den Quellen ('make ARCH=i386 fixdep') erzeugt wieder ein amd64
> auf
> der Kompiliermaschine.
> 
> Könnte mich bitte jemand auf einen erfolgversprechenden Pfad bringen?
> 
> 
> Mit freundlichen Grüßen / Kind regards
>      Ronny Seffner
> --
> Ronny Seffner  |  Alter Viehweg 1  |  01665 Klipphausen
> www.seffner.de  |  ro...@seffner.de  |  +49 35245 72950
> 7EA62E22D9CC4F0B74DCBCEA864623A568694DB8



Antwort per Email an