menuconfig - menuconfig

Menuconfig
Linux 4.4.2 ncurses configuration.png
menuconfig per Linux versione 4.4.2
Scritto in C
Sistema operativo Linux
Tipo costruire strumento di automazione
Licenza Licenza pubblica generale GNU
Sito web www .kernel .org

make menuconfigè uno dei cinque strumenti simili in grado di configurare il sorgente Linux , un passaggio iniziale necessario per compilare il codice sorgente . make menuconfig, con un'interfaccia utente guidata da menu , consente all'utente di scegliere le funzionalità di Linux (e altre opzioni) che verranno compilate. Normalmente viene invocato usando il comando make menuconfig; menuconfig è un obiettivo in Linux Makefile .

Storia

make menuconfignon era nella prima versione di Linux . Lo strumento predecessore è un'utilità basata su domande e risposte ( , ). Un terzo strumento per la configurazione di Linux è , che richiede Qt . C'è anche , che usa GTK+ e , che è simile a . make configmake oldconfigmake xconfigmake gconfigmake nconfigmake menuconfig

Tutti questi strumenti utilizzano internamente il linguaggio Kconfig . Kconfig viene utilizzato anche in altri progetti, come Das U-Boot , un bootloader per dispositivi embedded, Buildroot , uno strumento per generare sistemi Linux incorporati e BusyBox , un toolbox di utilità shell eseguibile per sistemi embedded.

Vantaggi rispetto alle versioni precedenti

Nonostante sia un design semplice, make menuconfigoffre notevoli vantaggi allo strumento di configurazione basato su domande e risposte make oldconfig, il più notevole è un sistema di ricerca di base e la possibilità di caricare e salvare file con nomi di file diversi da " .config". make menuconfigoffre all'utente la possibilità di navigare in avanti o indietro direttamente tra le funzioni, invece di utilizzare il tasto premendo il tasto molte, molte volte solo per navigare in modo lineare alla configurazione per una funzione specifica. make config↵ Enter

Se l'utente è soddisfatto di un .configfile precedente , using make oldconfigutilizza questo file precedente per rispondere a tutte le domande che può, presentando solo in modo interattivo le nuove funzionalità. Questo è inteso per un aggiornamento della versione, ma può essere appropriato in altri momenti.

make menuconfigè un carico leggero sulle risorse di sistema a differenza (usa Qt dalla versione 2.6.31.1, precedentemente Tk ) o , che utilizza GTK+ . È possibile ignorare la maggior parte delle funzionalità con , e così facendo è più probabile che si configuri un kernel incompleto o sovradimensionato. Si consiglia di iniziare con il file incluso nella distribuzione Linux , che semplifica la configurazione di un kernel personalizzato. make xconfigmake gconfigmake config.config

Meglio che modificare .configa mano, make menuconfigmostra le descrizioni di ogni funzione (premendo il pulsante "Aiuto" mentre si è in un'opzione di menu) e aggiunge alcuni controlli delle dipendenze (primitivi nella versione 2.6.31.1). Con make oldconfig, il controllo delle dipendenze può essere eseguito in un solo passaggio, ma richiede all'utente di individuare manualmente le funzionalità che sono state modificate, per essere sicuro che quelle necessarie siano ancora abilitate.

In pratica, l'uso di entrambi make menuconfige make oldconfig, diff , (anche cvs e un editor di testo decente) fornisce la massima flessibilità e affidabilità. La configurazione di Linux è un lavoro significativo, quindi si consiglia vivamente agli utenti di eseguirne backup (ad es cp /usr/src/linux*/.config ~/savemywork.config. ).

Le informazioni di aiuto sono distribuite nell'albero dei sorgenti del kernel nei vari file chiamati Kconfig.

dipendenze

Per usare make menuconfig, il sorgente Linux è un requisito, uno strumento make , un compilatore C e la libreria ncurses .

Tratti chiave

Principali sequenze di tasti
Tratto chiave Senso
? Descrizione dell'opzione e suggerimenti/Aiuto
PgUpPgDn Navigare attraverso le funzionalità del kernel e i comandi menuconfig.
Esc+Esc Uscire da menuconfig o annullare il comando.
↵ Enter Attiva un comando o espandi un ramo.
y Compila e includi questa funzionalità all'interno del kernel.
m Compila questa funzionalità come un modulo, separato dal kernel.
n Non compilare la funzione.
/ Parametro di configurazione della ricerca.

Simboli

A sinistra delle caratteristiche c'è l'impostazione (y, M o vuoto) racchiusa tra due segni di punteggiatura.

Informazioni sulla dipendenza
Simbolo Senso
< > Nessuna dipendenza.
[ ] Una dipendenza richiede che questo sia compilato in (y) o non compilato (n).
{ } Una dipendenza richiede che sia un modulo (m) o compilato (y).
- - Una dipendenza richiede che questo sia compilato in (y).

Nota che le informazioni sulle dipendenze fornite sono primitive, non ti dicono i nomi delle caratteristiche dipendenti.

Altri simboli
Simbolo Senso
---> Utilizzare ↵ Enterper espandere questo ramo come una nuova finestra.
(Sperimentale) Codice instabile/minore, attenzione.
(Nuovo) Un'opzione non presente in una versione precedente di Linux.
(Deprecato) Un'opzione che verrà rimossa nelle versioni future.

menuconfig nel flusso di lavoro di compilazione del kernel

L'utente è incoraggiato a leggere il README di Linux , poiché ci sono anche molti altri target make (oltre a modules_install e install ). Ciascuno configurerà il kernel, ma con diverse funzionalità attivate, o utilizzando una diversa interfaccia interattiva; come tinyconfig o allyesconfig .

flusso di lavoro semplice (ma efficace)

  1. make menuconfig
  2. Quindi compila il kernel compresso e i suoi moduli, un processo lungo. make.
  3. Installa usando il tuo metodo preferito come make modules_install, make install.

Guarda anche

Riferimenti

link esterno