Pure Os
Technique
Compilation d\'un noyau
Ndiswrapper
geneweb
Visites
Nouvelles des Amis
|
compiler_un - kernel_de_kernel.org
Ubuntu (toutes version)
Comment compiler un kernel de Kernel.orgIl peut être utile de compiler un ancien kernel (pour palier à une incompatibilité sources avec un module spécifique et le kernel 2.6.20 par exemple) je vais donc détailler comment faire; et j'invite tous ceux qui le veulent à ajouter des précisions ... Pré-requis :
DépendancesPaquets basiqueTout d'abord il faut installer le strict minimum pour la compilation: sudo apt-get install build-essential kernel-package initramfs-tools fakeroot Paquet pour créer le ".config"Le ".config" c'est le fichier de configuration contenant les instructions de compilations. Pour une interface graphique (le truc bleu) en mode console : sudo apt-get install libncurses5-dev Pour une interface en TK : sudo apt-get install tk-dev Pour une interface en GTK+ (noyau 2.6 seulement) : sudo apt-get install libglib2.0-dev libgtk2.0-dev libglade2-dev Pour une interface en QT (noyau 2.6 seulement) : sudo apt-get install libqt3-mt-dev libqt3-headers Téléchargement des sourcesLe répertoire /usr/srcNous supposerons ici que vous compilerez dans le répertoire /usr/src Vous pouvez bien entendu utiliser un autre répertoire, mais disons que celui-ci c'est celui de base, alors autant faire comme ça Il faut déjà que vous sachiez dans quel groupe vous vous trouvez : jm@ubuntu:~$­­­ groups Si vous n'appartenez pas au groupe "src", rajoutez-vous : sudo adduser $­­­USERNAME src Il faut maintenant se reconnecter sous votre login pour que les nouveaux droits soit fonctionnels. su $­­­USERNAME ## Entrer votre mot de passe Allez dans le répertoire /usr/src: cd /usr/src Le répertoire /usr/src doit ressembler à ça une fois les paquets installé: jm@ubuntu:/usr/src$­­­ ls -la Nous avons donc : Vous devez supprimer les sources des anciens noyaux que vous avez compilé (s'il y an a): rm -d -r ./linux-2.* NoyauEnsuite il faut télécharger l'archive sur Kernel.org: lien vers le ftp pour les 2.6 Ou alors placez vous dans le dossier /usr/src et entrer la commande suivante pour télécharger le kernel . (ici la 2.6.23.1) wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.23.1.tar.bz2 Idéalement, téléchargez-le dans /usr/src et décompressez-le : tar xvf linux-2.*.tar.bz2 ALSA (2.4 seulement)Alsa est le nouveau système de son de Linux, très utilisé. Malheureusement il n'est pas utilisé par défaut dans les noyaux 2.4... sudo apt-get install alsa-source Normalement tout se trouve alors dans /modules/alsa-driver/ : Il faut ensuite configurer alsa : jm@ubuntu:/usr/src$­­­ cd modules/alsa-driver Avec le configure vous devriez pouvoir choisir le module de votre carte son (lisez le readme) jm@ubuntu:/usr/src/modules/alsa-driver$­­­ ./configure Malheureusement chez moi, je suis BLOQUE a l'étape ou il cherche le fichier "version.h" du noyau... Si vous savez comment résoudre cela, corrigez ici !! NVIDIA Avec la technique des liens symboliquesVoir ce How-To. Avec le moduleTéléchargez le paquet "nvidia-glx-dev" : sudo apt-get install nvidia-glx-legacy-dev ## Vielles cartes Une fois le paquet téléchargé, il se trouve dans le dossier /usr/src/, alors décompressez : jm@ubuntu:/usr/src$­­­ tar xvf nvidia Vous devriez avoir un dossier /modules/nvidia-kernel (ou nvidia-kernel-legacy ou nvidia-kernel-new selon le paquet téléchargé). Lors de la compilation, n'oubliez pas de faire –added-modules= : --added-modules=nvidia-kernel Avec le .run du siteNe faites rien pour l'instant, puis une fois votre noyau compilé, téléchargez le .run sur le site officiel. ATI Avec la technique des liens symboliquesVoir ce How-To. Avec le module J'imagine que ça doit être comme pour NVidia avec le paquet fglrx-kernel-source ?? Avec le .run du siteNe faites rien pour l'instant, puis une fois votre noyau compilé, téléchargez le .run sur le site officiel. ConfigurationRendez-vous dans le dossier "linux-2.'la version téléchargée'" : cd /usr/src/linux-2.* Récupérez la configuration de votre noyau actuel, pour ne pas avoir à tout reconfigurer et garder ce qui marche: cp /boot/config-`uname -r` ./.config Initialisez votre nouveau jeu d'options: make oldconfig Vous pouvez garder toutes les réponses proposées par défaut et juste appuyer sur entrer lorsqu'il vous pose une question. Pour créer une configuration en mode console : make config ## Déconseillé pour les débutants et même les autres Pour créer une configuration en mode semi-graphique (menu bleu) : make menuconfig Pour créer une configuration en TK ou en QT : make xconfig Pour créer une configuration en GTK+ (interface GNOME -elle n'est pas bien finie...) : make gconfig Si vous n'avez rien à configurer, cliquez simplement sur enregistrer dans l'interface graphique qui appairait Si vous avez envie de configurer au mieux votre kernel, aidez-vous de la page kernel_options CompilationCette partie décrit toutes les options possibles pour make-dpkg, et il y en a plein, si vous voulez simplement créer un noyau classique rapidement, allez directement à la partie Compilation basique. La compilation se fait avec make-kpkg qui automatise en fait plusieurs commandes :
En résulte alors un paquet *.deb (si vous utilisez la cible buildpackage) qu'il faudra installer avec dpkg : sudo dpkg -i linux*.deb Les arguments de compilationIl existes différents arguments à make-kpkg : --initrdLa plus importante, crée un fichier initrd qui permet d'utiliser des modules directement à l'amorçage du kernel. --rootcmd=fakeroot|sudoVous permet de choisir avec quelle méthode vous permettez a make-kpkg d'utiliser les ressources de root. Vous pouvez également compiler en root : jm@ubuntu:/usr/src/linux/$­­­ su root --added_modulesPour ajouter des modules (alsa, nvidia/ATI, etc...). Pour en mettre plusieurs, séparez avec une virgule : --added-modules=alsa-driver,nvidia-kernel-legacy --append-to-version & --revisionFACULTATIF Pour ajouter une version à votre kernel (voir comment_compiler_un_kernel_sur_mesure_old). Les cibles de compilationbuildpackageC'est celle qu'il faut utiliser si vous débutez !! Cela a pour conséquence d'utiliser la cible "clean et "binary" décrite ci-dessous. cleanPermet de « nettoyer le répertoire des sources du noyau de tous les fichiers créés par l'invocation de d'une des cibles données ci dessous, et effectue un make distclean » (traduction de la partie du manuel consacré à cette cible $­­­ man make-kpkg). binaryCette cible « construit les quatre paquets Debian du noyau en utilisant les cibles kernel_source, kernel_headers, kernel_doc et kernel_image (traduction de la partie du manuel consacré à cette cible *$­­­ man make-kpkg). kernel_docCet autre cible compile et crée pour vous un paquet Debian contenant les documentations fournis avec le noyau. kernel_imageCela permet de créer un paquet qui contient l'image du kernel, ses modules et permet aussi la configuration automatique de Grub ou de LILO. kernel_sourceCette cible construit un paquet Debian des sources du noyau Linux que vous compilez. Cela est particulièrement utile si vous souhaitez réutiliser ultérieurement les sources du noyau que vous souhaiteriez conserver. kernel_headers Celle-ci a pour but de produire un paquet Debian contenant les entêtes du noyau Linux. Les entêtes peuvent être nécessaires pour compiler certains programmes. modules_imageCette cible a pour but de produire un paquet Debian pour chaque module supplémentaire que vous avez installé et qui se trouve dans le répertoire /usr/src/modules/. Compilation basiqueLa commande la plus basique pour compiler : Sous Ubuntusudo make-kpkg --initrd buildpackage Sous Debiansu -c 'make-kpkg --initrd buildpackage' Retournez dans la dossier précédent: cd .. Et installer les *.deb : Sous Ubuntusudo dpkg -i linux*.deb Sous Debiansu -c 'dpkg -i linux*.deb' Voilà c'est fait LiensHOW-TO : Utiliser le linux-restricted-module pour un noyau compilé : http://ubuntuforums.org/showthread.php?t=441013 Un bon guide pour Debian pleins d'infos sympa : http://www.andesi.org/index.php?node=77 Un guide pour installer la carte wifi Intel PRO/Wireless 2200BG http://forum.ubuntu-fr.org/viewtopic.php?pid=1108685#p1108685
Contributeurs: Créée par Fabien26, énormément améliorée par adam0509 :) Date de création : 23/12/2007 @ 18:38 Réactions à cet article
| Préférences
Se reconnecter --- 12 membres
( personne )
Compiz-fusion-plugins
Recherche
Calendrier
|

Val-Libre
Grub2



12 membres
Haut 
