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

Re: Compilazione kernel con modulo binder_linux e waydroid.



Ciao,
non ho riportato tutti i passaggi, ma anche se l'ho fatto ormai un paio di settimane fa, se non ricordo male anche io ho seguito più o meno quanto descrivi, cioè la via maestra Debian Way, tant'è che nei vari test ho prodotto i pacchetti linux-image*.deb che ho installato ma senza riuscire a attivare il benedetto binder:

Per quanto riguarda il suggerimento di prendere il config di una versione che voglio ricompilare, considera che in alcuni casi si trattava di kernel che non metteva direttamente a disposizione il sorgente dal repository, ma potevi scaricare il relativo tar da github.

Per esempio qui si vede la configurazione del repository:

bpxroot@hpebian:~/kernel-src/linux-source-6.4$ sudo grep -ri liquorix /etc/apt/
grep: /etc/apt/keyrings/liquorix-keyring.gpg: binary file matches
/etc/apt/sources.list.d/liquorix.list:deb [arch=amd64 signed-by=/etc/apt/keyrings/liquorix-keyring.gpg] https://liquorix.net/debian trixie main
/etc/apt/sources.list.d/liquorix.list:deb-src [arch=amd64 signed-by=/etc/apt/keyrings/liquorix-keyring.gpg] https://liquorix.net/debian trixie main

ma se cerco il sorgente liquorix trovo nulla:

$ apt-cache search linux- | grep -i liquorix | grep -i linux-source
$

non è che non ci sono i pacchetti liquorix:

$ apt-cache search linux-  | grep -i liquorix
linux-headers-6.4.1-1-liquorix-amd64 - Header files for Linux 6.4.1-1-liquorix-amd64
linux-headers-6.4.1-2-liquorix-amd64 - Header files for Linux 6.4.1-2-liquorix-amd64
... lista lunga ...
linux-image-6.4.9-1-liquorix-amd64 - Linux 6.4 for 64-bit PCs
linux-image-liquorix-amd64 - Linux image for liquorix on 64-bit PCs

se cerco altri sorgenti:

$ apt-cache search linux-  | grep -i linux-source
linux-source - Linux kernel source (meta-package)
linux-source-6.4 - Linux kernel source for version 6.4 with Debian patches
linux-source-6.1 - Linux kernel source for version 6.1 with Debian patches


quindi se uno vuole i sorgenti di liquorix li cerca su github ma non è detto siano esattamente quelli del pacchetto che ti mettono a disposizione, d'altronde lo capisco, già ti danno i sorgenti di tutto quello che fanno quindi se ti serve roba precedente te la prendi e in un paio di ore la compili.


Nei fatti il mio dubbio era specificatamente in merito alle differenti impostazioni possibili relative al modulo binder e a quelle che a me sembrano essere delle pe rme incomprensibili incompatibilità.

Cmq grazie per le indicazioni.









Il giorno mar 29 ago 2023 alle ore 23:14 Davide Prina <Davide.Prina@null.net> ha scritto:
Beppe Cantanna ha scritto:

> Perché i kernel linux-image-6.4.0-2-amd64 e linux-image-6.4.11-x64v3-xanmod1
> sono compilati con il modulo binder attivo, ma se cerco di riportare le stesse
> impostazioni sul sorgente di linux-image-6.4.11-2-liquorix-amd64 la
> compilazione fallisce?

ma da quanto scrivi non mi sembra che compili usando al Debian way.
Quando usi un file di configurazione di un una versione versione precedente
devi far fare il check per vedere se manca qualche parametro e rispondere
alle domande per impostazione dei parametri nuovi.

ti faccio un riassunto di quello che faccio io per compilare una nuova versione
di Linux prendendo il .config Debian della stessa versione compilata ed applicando
le mie impostazioni personalizzate contenute in imposta_config.sh

$ cd ~/src
# apt install build-essential fakeroot rsync git
# apt build-dep linux
$ mv linux-source.... linux-source....old <- se serve
$ tar Jxvf /usr/src/linux-source-... <- se serve (se non è cambiata versione rispetto ultima compilazione)
$ ln -sf ~/src/linux-source-... linux <- se serve (se è cambiata versione rispetto ultima compilazione)
$ cd linux
$ cp /boot/config-... .config
$ ../imposta_config.sh
$ time make -j 5 bindeb-pkg
# cd ~/src
# apt install ./linux-image... ./linux-header... ./linux-libc-dev...

il file imposta_config.sh contiene righe come le seguenti:
# disabilita le informazioni di debug
scripts/config --disable DEBUG_INFO
scripts/config --disable DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT
scripts/config --disable DEBUG_INFO_BTF
scripts/config --disable DEBUG_INFO_BTF_MODULES

# disabilita la firma di Linux (altrimenti solo un certificato valido permette la sua compilazione)
#scripts/config --disable MODULE_SIG
scripts/config --set-str SYSTEM_TRUSTED_KEYS ""

# imposta il postfisso al Linux compilato
scripts/config --set-str LOCALVERSION "-dp-$(date +%Y%m%d)"
[...]

se usi questa modalità e copi il .config della versione da cui vuoi partire
dovresti ottenere una versione Linux eseguibile.

Il mio consiglio è però prendere il .config Debian della versione che vuoi
ricompilarti e applicare le tue modifiche... è meglio se ti crei un file
.sh come ho fatto io che fa le impostazioni in automatico ogni volta che vuoi
ricompilarti una nuova versione di Linux

Ciao
Davide

--
La mia privacy non è affar tuo
https://noyb.eu/it
- You do not have my permission to use this email to train an AI -
If you use this to train your AI than you accept to distribuite under AGPL
license >= 3.0 all the model trained, all the source you have used to
training your model and all the source of the program that use that model



--
CANTANNA Giuseppe
cel. +39 349 1998700
giuseppe.cantanna@glugto.org
cantanna@glugto.org
cantanna@gmail.com


bproot.bc - Linux user n. 502620 registered on http://counter.li.org/
Nodo NINUX: broot.

Per favore non inviatemi allegati in formato MS Office.
​​
Utilizza
​te​
 alternativamente documenti in formato OpenDocument.

Reply to: