On Sun, 12 May 2002, tom wrote: > Ho intenzione di provare a fare la mia prima compilazione.Legendo il manuale > di riferimento ho avuto un idea delcome questo avvenga....ma non mi � stato > di grande aiuto....quindi ho deciso di passare alla pratica! > Ho intenzione di compilare qualcosa giusto per sport, > si ok....ma che compilo?
Be', diciamo che la terapia d'urto in linux forse e' la migliore se si vuole imparare seriamente :P E' anche vero pero' che il kernel, in quanto a compilazione, non segue lo standard della sequenza da impartire per ottenere il risultato; quindi probabilmente ti conviene iniziare con un pacchetto qualsiasi di sorgenti in formato .tar.gz o .tar.bz2. Normalmente il programmatore, per facilitare la compilazione, predispone dei file c.d. "Makefile" che sono utilizzati per automatizzare in tutto o in parte il processo di creazione ed eventuale installazione del binario finale. In tal caso dovrai _sempre_ leggere il file INSTALL o, in mancanza, README, per verificare quali comandi impartire, comandi che, in linea di massima, si ridurranno a questi tre: 1) ./configure [per creare un Makefile personalizzato in funzione di caratteristiche particolari del sistema, perlopiu' quando il Makefile non esiste] 2) make [per compilare i sorgenti fino ad ottenere i binari] 3) make install [per installare i binari ottenuti] Ribadisco che non necessariamente i comandi sono questi, potrebbe bastare un semplice "make", leggi le istruzioni allegate. Nel caso in cui, invece, i Makefile o gli strumenti per crearli non siano stati previsti dal simpatico programmatore, dovrai darti una lettura del 'man gcc' dato che la compilazione sara' da fare a manina. Per la compilazione del kernel la cosa e' abbastanza complicata, nel senso che dovrai: 1) configurare le voci delle opzioni del kernel, attivandole come built-in, disattivandole o attivandole come modulo (ove possibile): make config | menuconfig | xconfig (scegline uno dei tre: il primo e' di solo testo, abbastanza ostico; il secondo e' a menu testuale; il terzo e' a menu grafico e piuttosto immediato); 2) sistemare le dipendenze conseguenti alle voci attivate: make dep 3) fare un po' di pulizia di alcuni file: make clean 4) creare il kernel monolitico: make bzImage 5) creare i moduli: make modules 6) installare i moduli nella directory /lib/modules/_versione-del-kernel_: make modules_install 7) copiare il kernel [arch/i386/boot/bzImage] e la mappa dei simboli (System.map) nella directory /boot 8) fare in modo che il bootloader richiami il kernel giusto, modificando opportunamente il menu [se usi lilo, bisogna poi dare anche un 'lilo'] 9) fare attenzione a non sovrascrivere o eliminare voci e/o kernel precedenti, perche' altrimenti in caso di problemi non potrai piu' riavviare il sistema in modo normale. Credo che piu' o meno sia tutto. Byez, Lk -- LU #210970 LM #98222 - MDK8.2 elaborata / 2.4.18-6mdk Ricorda: i motori di ricerca ti vogliono bene, non abbandonarli!! Netiquette al contrario (volutamente ironica): http://www.geocities.com/Athens/Parthenon/9704/galareteo.html
