Je cherche à éclaircir un mystère à propos de compilations.
Je lis de ci de là que le fait de compiler ses programmes à partir des
sources peut (dans certains cas), améliorer les performances du programme,
ou régler des problèmes de dépendances que l'on aurait pu avoir en
utilisant des paquets type .deb ou .rpm
Par exemple pour Mozilla sur ma distrib [Mdk 9.0]: mozilla-1.1-10mdk
Quelle différence y aurait il, pour cette version entre:
-Le rpm de chez Mandrake
-Le source de chez Mandrake compilé
-Le source de chez Mozilla compilé
sur une même machine.
D'après les docs Mandrake, ou du moins ce que j'en ai compris, le .configure va
faire une série de test sur la présence des compilateurs, leurs commandes et les
bibliothèques.
Par contre teste t'il la présence de bibliothèque d'une version donnée ou peut
il se débrouiller avec n'importe quelle version d'une bibliothèque du moment que
celle ci est présente ?
Je précise que je ne maîtrise aucun langages de programmation, donc je
recherche des infos susceptible d'être comprise par un novice en la
matière, la distrib m'importe peu.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
chmod 777
Jolitorax wrote:
Bonjour,
Bonsoir
Je précise que je ne maîtrise aucun langages de programmation, donc je recherche des infos susceptible d'être comprise par un novice en la matière, la distrib m'importe peu.
Et bien déjà, ton programme sera compilé avec les optimisations propres à ton processeur, et non pas pour un 386 ou un pentium I... Si tu as un processeur plus récent, tu va fatalement gagner des perfos à ce niveau là...
Lionel
-- Mon adresse EST valide: ne rien supprimer! J'espère être tranquille grâce à la méthode Paugam
Jolitorax wrote:
Bonjour,
Bonsoir
Je précise que je ne maîtrise aucun langages de programmation, donc je
recherche des infos susceptible d'être comprise par un novice en la
matière, la distrib m'importe peu.
Et bien déjà, ton programme sera compilé avec les optimisations propres à
ton processeur, et non pas pour un 386 ou un pentium I... Si tu as un
processeur plus récent, tu va fatalement gagner des perfos à ce niveau
là...
Lionel
--
Mon adresse EST valide: ne rien supprimer!
J'espère être tranquille grâce à la méthode Paugam
Je précise que je ne maîtrise aucun langages de programmation, donc je recherche des infos susceptible d'être comprise par un novice en la matière, la distrib m'importe peu.
Et bien déjà, ton programme sera compilé avec les optimisations propres à ton processeur, et non pas pour un 386 ou un pentium I... Si tu as un processeur plus récent, tu va fatalement gagner des perfos à ce niveau là...
Lionel
-- Mon adresse EST valide: ne rien supprimer! J'espère être tranquille grâce à la méthode Paugam
Fabrice
Salut,
Un exemple : Par pur vice j'utilise mutt avec un patch nntp pour lire les news. Je suis sous Debian Sid. Comme je n'ai pas trouvé de .deb pré-compilé avec ce patch je compile le programme à la main. ./configure --help me revele plein d'options interessantes Dans mon cas ./configure --enable-nntp --enable-pop --enable-buffy-size J'obtiens mon mutt adoré avec les options tordues que je prefere..
En bref 99% de .deb et quelques rares compilations aux petits oignons
-- ****************************************************************** Le 15 juin 2004 à 07 heures 19 minutes
Un exemple :
Par pur vice j'utilise mutt avec un patch nntp pour lire les news. Je
suis sous Debian Sid. Comme je n'ai pas trouvé de .deb pré-compilé avec
ce patch je compile le programme à la main.
./configure --help me revele plein d'options interessantes
Dans mon cas ./configure --enable-nntp --enable-pop --enable-buffy-size
J'obtiens mon mutt adoré avec les options tordues que je prefere..
En bref 99% de .deb et quelques rares compilations aux petits oignons
--
******************************************************************
Le 15 juin 2004 à 07 heures 19 minutes
Un exemple : Par pur vice j'utilise mutt avec un patch nntp pour lire les news. Je suis sous Debian Sid. Comme je n'ai pas trouvé de .deb pré-compilé avec ce patch je compile le programme à la main. ./configure --help me revele plein d'options interessantes Dans mon cas ./configure --enable-nntp --enable-pop --enable-buffy-size J'obtiens mon mutt adoré avec les options tordues que je prefere..
En bref 99% de .deb et quelques rares compilations aux petits oignons
-- ****************************************************************** Le 15 juin 2004 à 07 heures 19 minutes
Et bien déjà, ton programme sera compilé avec les optimisations propres à
ton processeur, et non pas pour un 386 ou un pentium I... Si tu as un processeur plus récent, tu va fatalement gagner des perfos à ce niveau là...
Lionel
M'enfin, fatalement, je dirais pas ça...
Hervé Riboulot
Le Tue, 15 Jun 2004 00:14:37 +0200, chmod 777 a écrit :
Jolitorax wrote:
Bonjour,
Bonsoir
Bonsoir,
Je précise que je ne maîtrise aucun langages de programmation, donc je recherche des infos susceptible d'être comprise par un novice en la matière, la distrib m'importe peu.
Il n'est pas utile de maîtriser un langage de programmation pour lancer une compilation. Les commandes obéissent à un enchaînement démoniaque et immuable:
./configure (on lance un programme qui va pour l'essentiel analyser l'environnement du système pour vérifier les pré requis et préparer les paramètres utiles). Le ./ signifie que l'on va exécuter le script configure qui est dans la directory dans laquelle on se positionne.
make (on fabrique tous les éléments utiles pour le programme)
make install (les différents éléments sont logés dans les directories ad hoc et les liens nécessaires sont créés).
Et bien déjà, ton programme sera compilé avec les optimisations propres à ton processeur, et non pas pour un 386 ou un pentium I... Si tu as un processeur plus récent, tu va fatalement gagner des perfos à ce niveau là...
C'est sans doute un peu rapide. IL faut attentivement lire les fichiers INSTALL ou README ou autres pour bien identifier les paramètres possibles et choisir ... Il existe aussi des choix par défaut qui ne concourent pas nécessairement à l'optimum.
Bref, la lecture est un préalable obligé car au début, était le verbe p-))
Lionel
Maintenant, entrons dans quelques détails:
-Le rpm de chez Mandrake: un rpm est un ensemble de programmes déjà compilés, de règles pour les implanter et de contrôles préalables pour vérifier tous les prérequis. RPM signifie Red Hat Packages Manager,du nom de son géniteur préféré. Une base de données décrivant les rpm est constituée, qui sert pour l'exécution des contrôles. Il existe d'autres systèmes du même acabit dont apt ...
Mandrake a fait le choix rpm. Au-dessus, se greffe urpmi qui intègre une gestion des sources de rmp et diverses commandes (créer une source, la mettre à jour, la supprimer, rechercher les packages les plus à jour dans les sources et tutti quanti (I'm rolling)).
Divers logiciels masquent rpm et en simplifient l'utilisation (ils permettent de ne pas passer par la ligne de commande): kpackage par exemple.
Au-dessus de urpmi, on citera le fameux centre de contrôle Mandrake (mcc qui lance d'autres programmes graphiques (drakrpm ...).
-Le source de chez Mandrake compilé: on lance la compilation avec des paramètres Mandrake par défaut. Par exemple, Mandrake crée un répertoire /usr/lib/mozilla/plugins où sont stockés les plugins qui s'apliquent à toutes les versions Mozilla installées en /usr/lib/mozilla-1.x
Des variables d'environnement permettent de gérer correctement cette cohabitation en sorte que les plugins sont implantés dans une directory et une seule et n'ont pas à être dupliqués.
Cette logique n'est pas celle de la modalité suivante d'implantation de Mozilla:
- Le source de chez Mozilla compilé: ben pareil pas mieux mais en version Mozilla.
Voilà donc, in a nutshell, comme le disent nos amis anglais, fort dépités de leur match de mardi soir ...
Le Tue, 15 Jun 2004 00:14:37 +0200, chmod 777 a écrit :
Jolitorax wrote:
Bonjour,
Bonsoir
Bonsoir,
Je précise que je ne maîtrise aucun langages de programmation, donc je
recherche des infos susceptible d'être comprise par un novice en la
matière, la distrib m'importe peu.
Il n'est pas utile de maîtriser un langage de programmation pour lancer
une compilation. Les commandes obéissent à un enchaînement démoniaque
et immuable:
./configure (on lance un programme qui va pour l'essentiel analyser
l'environnement du système pour vérifier les pré requis et préparer
les paramètres utiles). Le ./ signifie que l'on va exécuter le script
configure qui est dans la directory dans laquelle on se positionne.
make (on fabrique tous les éléments utiles pour le programme)
make install (les différents éléments sont logés dans les directories
ad hoc et les liens nécessaires sont créés).
Et bien déjà, ton programme sera compilé avec les optimisations propres à
ton processeur, et non pas pour un 386 ou un pentium I... Si tu as un
processeur plus récent, tu va fatalement gagner des perfos à ce niveau
là...
C'est sans doute un peu rapide. IL faut attentivement lire les fichiers
INSTALL ou README ou autres pour bien identifier les paramètres possibles
et choisir ... Il existe aussi des choix par défaut qui ne concourent pas
nécessairement à l'optimum.
Bref, la lecture est un préalable obligé car au début, était le verbe
p-))
Lionel
Maintenant, entrons dans quelques détails:
-Le rpm de chez Mandrake: un rpm est un ensemble de programmes déjà
compilés, de règles pour les implanter et de contrôles préalables pour
vérifier tous les prérequis. RPM signifie Red Hat Packages Manager,du
nom de son géniteur préféré. Une base de données décrivant les rpm
est constituée, qui sert pour l'exécution des contrôles. Il existe
d'autres systèmes du même acabit dont apt ...
Mandrake a fait le choix rpm. Au-dessus, se greffe urpmi qui intègre une
gestion des sources de rmp et diverses commandes (créer une source, la
mettre à jour, la supprimer, rechercher les packages les plus à jour
dans les sources et tutti quanti (I'm rolling)).
Divers logiciels masquent rpm et en simplifient l'utilisation (ils
permettent de ne pas passer par la ligne de commande): kpackage par
exemple.
Au-dessus de urpmi, on citera le fameux centre de contrôle Mandrake (mcc
qui lance d'autres programmes graphiques (drakrpm ...).
-Le source de chez Mandrake compilé: on lance la compilation avec des
paramètres Mandrake par défaut. Par exemple, Mandrake crée un
répertoire /usr/lib/mozilla/plugins où sont stockés les plugins qui
s'apliquent à toutes les versions Mozilla installées en /usr/lib/mozilla-1.x
Des variables d'environnement permettent de gérer correctement cette
cohabitation en sorte que les plugins sont implantés dans une directory
et une seule et n'ont pas à être dupliqués.
Cette logique n'est pas celle de la modalité suivante d'implantation de
Mozilla:
- Le source de chez Mozilla compilé: ben pareil pas mieux mais en version
Mozilla.
Voilà donc, in a nutshell, comme le disent nos amis anglais, fort
dépités de leur match de mardi soir ...
Le Tue, 15 Jun 2004 00:14:37 +0200, chmod 777 a écrit :
Jolitorax wrote:
Bonjour,
Bonsoir
Bonsoir,
Je précise que je ne maîtrise aucun langages de programmation, donc je recherche des infos susceptible d'être comprise par un novice en la matière, la distrib m'importe peu.
Il n'est pas utile de maîtriser un langage de programmation pour lancer une compilation. Les commandes obéissent à un enchaînement démoniaque et immuable:
./configure (on lance un programme qui va pour l'essentiel analyser l'environnement du système pour vérifier les pré requis et préparer les paramètres utiles). Le ./ signifie que l'on va exécuter le script configure qui est dans la directory dans laquelle on se positionne.
make (on fabrique tous les éléments utiles pour le programme)
make install (les différents éléments sont logés dans les directories ad hoc et les liens nécessaires sont créés).
Et bien déjà, ton programme sera compilé avec les optimisations propres à ton processeur, et non pas pour un 386 ou un pentium I... Si tu as un processeur plus récent, tu va fatalement gagner des perfos à ce niveau là...
C'est sans doute un peu rapide. IL faut attentivement lire les fichiers INSTALL ou README ou autres pour bien identifier les paramètres possibles et choisir ... Il existe aussi des choix par défaut qui ne concourent pas nécessairement à l'optimum.
Bref, la lecture est un préalable obligé car au début, était le verbe p-))
Lionel
Maintenant, entrons dans quelques détails:
-Le rpm de chez Mandrake: un rpm est un ensemble de programmes déjà compilés, de règles pour les implanter et de contrôles préalables pour vérifier tous les prérequis. RPM signifie Red Hat Packages Manager,du nom de son géniteur préféré. Une base de données décrivant les rpm est constituée, qui sert pour l'exécution des contrôles. Il existe d'autres systèmes du même acabit dont apt ...
Mandrake a fait le choix rpm. Au-dessus, se greffe urpmi qui intègre une gestion des sources de rmp et diverses commandes (créer une source, la mettre à jour, la supprimer, rechercher les packages les plus à jour dans les sources et tutti quanti (I'm rolling)).
Divers logiciels masquent rpm et en simplifient l'utilisation (ils permettent de ne pas passer par la ligne de commande): kpackage par exemple.
Au-dessus de urpmi, on citera le fameux centre de contrôle Mandrake (mcc qui lance d'autres programmes graphiques (drakrpm ...).
-Le source de chez Mandrake compilé: on lance la compilation avec des paramètres Mandrake par défaut. Par exemple, Mandrake crée un répertoire /usr/lib/mozilla/plugins où sont stockés les plugins qui s'apliquent à toutes les versions Mozilla installées en /usr/lib/mozilla-1.x
Des variables d'environnement permettent de gérer correctement cette cohabitation en sorte que les plugins sont implantés dans une directory et une seule et n'ont pas à être dupliqués.
Cette logique n'est pas celle de la modalité suivante d'implantation de Mozilla:
- Le source de chez Mozilla compilé: ben pareil pas mieux mais en version Mozilla.
Voilà donc, in a nutshell, comme le disent nos amis anglais, fort dépités de leur match de mardi soir ...
Michel Tatoute
Et bien déjà, ton programme sera compilé avec les optimisations propres à
ton processeur, et non pas pour un 386 ou un pentium I... Si tu as un processeur plus récent, tu va fatalement gagner des perfos à ce niveau là...
Lionel
M'enfin, fatalement, je dirais pas ça...
sur. Perso j'ai jamais ressenti un seul poil de difference, sauf avec le timer. Mais c'est vrai que ca devrait faire une différence (cas particulier de mplayer à part).
Michel.
Et bien déjà, ton programme sera compilé avec les optimisations
propres à
ton processeur, et non pas pour un 386 ou un pentium I... Si tu as un
processeur plus récent, tu va fatalement gagner des perfos à ce niveau
là...
Lionel
M'enfin, fatalement, je dirais pas ça...
sur. Perso j'ai jamais ressenti un seul poil de difference, sauf avec le
timer. Mais c'est vrai que ca devrait faire une différence (cas
particulier de mplayer à part).
Et bien déjà, ton programme sera compilé avec les optimisations propres à
ton processeur, et non pas pour un 386 ou un pentium I... Si tu as un processeur plus récent, tu va fatalement gagner des perfos à ce niveau là...
Lionel
M'enfin, fatalement, je dirais pas ça...
sur. Perso j'ai jamais ressenti un seul poil de difference, sauf avec le timer. Mais c'est vrai que ca devrait faire une différence (cas particulier de mplayer à part).