par Jean-Christophe.
Que faut-il installer pour pouvoir compiler un programme.
<cadre type=alert> Cette page est considérée comme étant obsolète.
C'est à dire que les informations qu'elle contient ne sont plus du tout à jour par rapport aux évolutions de GNU/Linux et des autres logiciels libres. Il peut même s'avérer risqué d'essayer de suivre les recommandations de cette page. Cette page n'est donc conservée que pour des raisons historiques ou les gens qui utiliseraient de vieilles distributions GNU/Linux. </cadre>
Afin de compiler le noyau (voir rubrique noyau) ou une autre application, vous avez besoin d'un certain nombre de packages, sans quoi vous aurez tout un tas d'erreurs qui conduirons vos compilations à l'échec. Nous allons voir ci-dessous quels packages sont nécessaires dans quel cas (bien sûr, les versions des packages ne sont pas indiquées ici, utilisez les packages livrés avec votre distribution).
Pour voir si un tel package est installé sur votre ordinateur, utilisez les utilitaires graphiques comme kackage ou gnorpm, ou utilisez rpm en ligne de commande. Pour rechercher un package avec rpm, tapez :
[jice@taz jice]$ rpm -qa | grep make
Cette commande vous renverra tous les packages dont le nom contient "make".
Pour les distributions basées sur les packages RPM (Red Hat, Mandrake...), la commande ci-dessous donne la liste des packages et des fichiers dont dépend le package des sources du noyau (kernel-source).
Voyons parmi l'information que retourne cette commande les packages nécessaires à la compilation du noyau.
[jice@taz jice]$ rpm -qR kernel-source
kernel-headers = 2.2.13-7mdk glibc-devel ncurses-devel /bin/sh ld-linux.so.2 libc.so.6 libm.so.6 /usr/bin/perl libc.so.6(GLIBC_2.0) libc.so.6(GLIBC_2.1) libm.so.6(GLIBC_2.0) libm.so.6(GLIBC_2.1) |
-> pkg kernel-headers -> pkg glibc-devel -> pkg ncurses-devel |
Afin de compiler le noyau, vous aurez besoin d'autres packages :
Résumé des packages pour compiler le noyau :
(si j'en ai oublié, chez altern.org dites-le moi :)
Dans ce cas la réponse est moins simple, car les packages nécessaires dépendent de chaque logiciel qu'on compile (suivant le langage utilisé, les bibliothèques utilisées, etc.).
Lorsque vous installez votre nouvelle distribution, choisissez tout ce qui ressemble à "C development", "Development libraries", "C++ development", etc.
Dans quasiment tous les cas, il faut au moins un compilateur, les utilitaire standard (make et binutils) et les librairies standard, soit :
Ca fait déjà pas mal, je vous l'accorde, mais ce n'est pas fini !
En effet, chaque programme particulier utilisant une ou plusieurs bibliothèques, vous avez besoin de la version de développement de la librairie (nommée en général librairie-devel) afin de compiler votre programme. Si vous voulez être tranquilles, je vous conseille d'installer tous les packages de votre distribution qui se terminent par "devel". Cela suffit dans la plupart des cas, mais vous verrez parfois qu'il faut encore installer une librairie particulière.
De toute façon, tout ceci est normalement expliqué dans le fichier README livré avec l'archive du programme à compiler. Comme disent les anglophones : RTFM (Read The Fucking Manual !).
Bon, je ne résiste pas à l'envie de placer ici toutes les librairies que j'ai installées chez moi (Mandrake 6.1 avec ajouts perso) :
[jice@taz jice]$ rpm -qa|grep -i "-devel" faces-devel-1.6.1-11 libtermcap-devel-2.0.8-15mdk libjpeg-devel-6b-10mdk libpng-devel-1.0.3-4mdk gdbm-devel-1.8.0-2mdk xpm-devel-3.4k-6mdk Mesa-devel-3.0.99-4mdk zlib-devel-1.1.3-7mdk newt-devel-0.40-10mdk readline-devel-4.0-3mdk rpm-devel-3.0.3-31mdk libgr-devel-2.0.13-9mdk glibc-devel-2.1.1-16mdk libungif-devel-4.1.0-4mdk libstdc++-devel-1.1.3-3mdk ClanLib-devel-0.1.15-1 gtk+-devel-1.2.3-15mdk imlib-devel-1.9.5-6mdk kmp3-devel-19990829-1mdk libmikmod-devel-3.1.6-2mdk libtiff-devel-3.4-8mdk ncurses-devel-5.0_990703-4mdk qt-devel-1.44-12mdk slang-devel-1.3.8-1mdk svgalib-devel-1.4.0-10mdk XFree86-devel-3.3.5-3mdk
Plus...
Glide2x_SDK-2.1-3 Hermes-1.2.5-1 lesstif-0.87.0-1 OpenPTC-x11-1.0.0-2
@ Retour à la rubrique Noyau et modules
Cette page est issue de la documentation 'pré-wiki' de Léa a été convertie avec HTML::WikiConverter. Elle fut créée par Jean-Christophe Cardot le 18/01/2000.
© 18/01/2000 Jean-Christophe Cardot
![]() ![]() ![]() |
Ce document est publié sous licence Creative Commons Attribution, Partage à l'identique 3.0 : http://creativecommons.org/licenses/by-sa/3.0/ |