Newsgroup: it.comp.os.linux.iniziare
Titolo: kernel , come ricompilare?

Sono nuovissimi di Linux e devo ricompilare il kernel ma come si fa a far
partire il programma menuconfig o xconfi?
Quando lancio il comando make xconfig o make menuconfig, mi da un errore del
tipo No rule ....etxc.
Sono nella directori giusta e non so piu cosa fare
Aiutatemi! o sentito dire che devo fare dei link o qualcosa disimile
Grazie

 Sono nella directori giusta e non so piu cosa fare
Sicuro? Ma sei nella directory dei sorgenti che ovviamente hai
installato, non e' vero?
-- 
Pierluigi De Rosa (
tho...@durin.khazad-dum.net
).
<<      LINUX: the choice of a GNU generation     >>
<<   For my real address... ask the Balrog.       >>
* Sostenete la Lega per la Soppressione dei Troll *

# less /usr/src/linux/README
C'e' una cosa che non mi e' chiara. Per la compilazione sono necessari i
seguenti link simbolici:
# ln -s /usr/src/linux/include/asm-i386/ /usr/include/asm
# ln -s /usr/src/linux/include/linux/ /usr/include/linux
# ln -s /usr/src/linux/include/scsi/ /usr/include/scsi
Se  installi  il  pacchetto "kernel-headers-2.2.xx-yy.i386.rpm"  due  di
questi link sono presenti nel pacchetto rpm stesso:
$ rpm -qpl kernel-headers-2.2.12-20.i386.rpm
/usr/include/asm
/usr/include/linux
Perche' non vi e' nessuna info nel file /usr/src/linux/README ?
Potrei sbagliarmi ma nel file README delle versioni 1.x si faceva
riferimento a tali link e si diceva come crearli con il comando ln.
Ciao
Ale 
-- 
Per ottenere il mio indirizzo e-mail sostituire a NOSPAM il mio cognome

 # ln -s /usr/src/linux/include/scsi/ /usr/include/scsi
Non piu' sui kernel 2.2.x e nel README infatti non se ne fa cenno.


Non piu' sui kernel 2.2.x e nel README infatti non se ne fa cenno.
Sei sicuro? Io ho dovuto metterceli, i link. Non riuscivo a terminare la
compilazione, altrimenti.


 compilazione, altrimenti.
Certo che sono sicuro. Se hai un kernel 2.2.x non se ne parla nel
README e parte direttamente da 'make mrproper'


README e parte direttamente da 'make mrproper'
Mi spiace ma non riesco a seguirti. Se elimino i link, questo il
messaggio di errore che mi appare:
-------------------------------[ taglia ]-------------------------------
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -o
scripts/split-include
scripts/split-include.c
In file included from /usr/include/errno.h:36,
                 from scripts/split-include.c:26:
/usr/include/bits/errno.h:25: linux/errno.h: No such file or directory
make: *** [scripts/split-include] Error 1
-------------------------------[ taglia ]-------------------------------
Ho provato anche a dare "make mrproper" come comando iniziale ma non
cambia nulla.


 messaggio di errore che mi appare:
Il fatto e` che alcune distribuzioni (e.g. Debian) inserisce quegli
header nel pacchetto di sviluppo delle libc (libc6-dev); credo (ma non
sono del tutto certo) che questo sia l'andazzo che si sta cercando di
dare anche alle altre distro.
-- 
Cinereview: Three Kings: molto bello, soprattutto come       _/Davide\_
tecnica.  Voto: 8                                            \Alberani/

 messaggio di errore che mi appare:
Mi spieghi che versione di kernel hai?


Mi spieghi che versione di kernel hai?
Ho scaricato la patch per il 2.2.14 (da un mirror di 
ftp.kernel.org
) e l'ho
applicata al 2.2.13 presente nel CD #3 di Linux&C.


dare anche alle altre distro.
Cosa  che non  accade  con la  RH.  Gli header  sono  presenti solo  nei
sorgenti del kernel  e il pacchetto kernel-headers*.rpm  ci aggiunge due
link in /usr/include per andare a  "prenderli". Mi chiedevo come mai non
se ne facesse cenno nel file README accluso ai sorgenti del kernel.


 applicata al 2.2.13 presente nel CD #3 di Linux&C.
Mah:
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=> CLIP HERE < =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
INSTALLING the kernel:
 - If you install the full sources, do a
                cd /usr/src
                gzip -cd linux-2.2.XX.tar.gz | tar xfv -
   to get it all put in place. Replace "XX" with the version number of the
   latest kernel.
 - You can also upgrade between 2.2.xx releases by patching.  Patches are
   distributed in the traditional gzip and the new bzip2 format.  To
   install by patching, get all the newer patch files and do
                cd /usr/src
                gzip -cd patchXX.gz | patch -p0
   or
                cd /usr/src
                bzip2 -dc patchXX.bz2 | patch -p0
   (repeat xx for all versions bigger than the version of your current
   source tree, _in_order_) and you should be ok.  You may want to remove
   the backup files (xxx~ or xxx.orig), and make sure that there are no
   failed patches (xxx# or xxx.rej). If there are, either you or me has
   made a mistake.
   Alternatively, the script patch-kernel can be used to automate this
   process.  It determines the current kernel version and applies any
   patches found.
                cd /usr/src
                linux/scripts/patch-kernel
   The default directory for the kernel source is /usr/src/linux, but
   can be specified as the first argument.  Patches are applied from
   the current directory, but an alternative directory can be specified
   as the second argument.
 - Make sure you have no stale .o files and dependencies lying around:
                cd /usr/src/linux
                make mrproper
   You should now have the sources correctly installed.
SOFTWARE REQUIREMENTS
   Compiling and running the 2.2.x kernels requires up-to-date
   versions of various software packages.  Consult
   ./Documentation/Changes for the minimum version numbers required
   and how to get updates for these packages.  Beware that using
   excessively old versions of these packages can cause indirect
   errors that are very difficult to track down, so don't assume that
   you can just update packages when obvious problems arise during
   build or operation.
CONFIGURING the kernel:
 - Do a "make config" to configure the basic kernel.  "make config" needs
   bash to work: it will search for bash in $BASH, /bin/bash and /bin/sh
   (in that order), so one of those must be correct for it to work. 
   Do not skip this step even if you are only upgrading one minor
   version.  New configuration options are added in each release, and
   odd problems will turn up if the configuration files are not set up
   as expected.  If you want to carry your existing configuration to a
   new version with minimal work, use "make oldconfig", which will
   only ask you for the answers to new questions.
 - Alternate configuration commands are:
        "make menuconfig"  Text based color menus, radiolists & dialogs.
        "make xconfig"     X windows based configuration tool.
        "make oldconfig"   Default all questions based on the contents of
                           your existing ./.config file.
 
        NOTES on "make config":
        - having unnecessary drivers will make the kernel bigger, and can
          under some circumstances lead to problems: probing for a
          nonexistent controller card may confuse your other controllers
        - compiling the kernel with "Processor type" set higher than 386
[..]
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=> CLIP HERE < =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-


INSTALLING the kernel:
Ehm... il file /usr/src/linux/README ce l'ho anch'io :))
Boh, non so piu' che dirti. Per compilare il kernel i due link mi sono
necessari. Inoltre ho scoperto che /usr/include/scsi non e' piu' un link
bensi' una directory e di questo viene tenuto conto dagli script del
pacchetto rpm "glibc-devel":
$ rpm -q --scripts glibc-devel
preinstall script (through /bin/sh):
# this used to be a link and it is causing nightmares now
if [ -L /usr/include/scsi ] ; then
    rm -f /usr/include/scsi
fi


 Boh, non so piu' che dirti. Per compilare il kernel i due link mi sono
Non so... io ho sempre usato i tarball dei sorgenti (nel senso che i
kernel della RH mi hanno sempre fatto schifo) e da quando ho iniziato
a compilare il 2.2.2 (mi pare) fino all'attuale 2.2.10 non ho piu'
specificato i symlink.
