Pourquoi Ne Pas Distribuer De Binaires ?

Bonjour à tous,

cela fait maintenant plus d’un an que j’ai essayé linux (toujours sous debian, j’ai commencé par une debian, on m’avait dit que c’était compliqué mais j’ai réussi sans trop de problèmes).

Au bout de quelques mois je suis malgré tout revenu sous windows, Linux étant pour moi plus destiné à un serveur, et ma machine est plutôt destinée aux jeux, et j’ai certaines applis spécifiques windows.

Depuis peu, au boulot, on a pris un serveur dédié sous linux (FC3), qui fera serveur web avec des applis PHP/MySQL dessus.

Une de ces applis nécessite le mod zip pour php installé. Il n’était pas installé, et étant celui qui “s’y connaît le plus en linux”, le chef m’a demandé d’installer le module zip.

Bon, après quelques recherches, j’ai compris qu’il fallait installer pear et phpize (donc apt-get install php4-devel), ça m’a déjà un peu pris la tête, et ensuite j’ai donc tapé, confiant, pear install zip.

Problème : une dépendance non satisfaite, il me dit "libzzip not found".
Donc, apt-get install zziplib.
Je relance pear, et là même chose.

Pendant 2h j’ai galéré à essayer de comprendre ce qui n’allait pas, quand finalement un ami m’a dit qu’il fallait peut-être installer zziplib-devel. Ça a effectivement résolu le problème, cependant pear, après avoir compilé le module zip, me l’effaçait du répertoire, et donc je ne pouvais pas installer le module zip. J’ai fini par compiler moi-même le module zip (./configure, puis make), et copier le fichier obtenu zip.so dans /usr/lib/php4, pour enfin ajouter l’extension au fichier de configuration php.ini, pour que ça marche.

J’y ai en tout passé 3 heures. Et là, je me suis vraiment demandé, après toutes ces galères, pourquoi le fichier zip.so (donc le binaire) n’était pas distribué directement ? Ça simplifierait tellement les choses, d’avoir des binaires toutes prêtes à fonctionner.

Donc voilà, ma question est, pourquoi ne pas distribuer les binaires des applications linux ? Je pense que ça aiderait les newbies à essayer Linux, et que ça éviterait des heures de galère comme j’en ai eues.

Je sais que compiler son programme fait partie de “l’esprit linuxien”, mais quand même, on aurait tous tant à y gagner, de distribuer directement les binaires.

Qu’en pensez-vous ?

La plupart des distrib’ inclut un gestionnaire de package (debian-> apt-get, mandriva-> rpm-drake, fedora-> yum (je crois) etc…) qui se charge d’installer les binaires. Le fait de compiler soi-même un logiciel n’arrive pas très souvent. Ca arrive quand on veut une version plus “custom” du programme ou quand le programme n’existe pas.
Les packages (permettant l’installation des binaires sans passer par les sources donc) sont gérés offciellement par les distributions ou par des contributeurs serieux. En effet, sans les sources, on ne peut pas savoir ce que fait le programme. L’installation des binaires se faisant la plupart du temps en root, imagine un binaire qu’une personne mal intentionnée te ferait telecharger et qui executerait un rm -rf / . C’est pour cela qu’il vaut mieux se contenté de depots officiels ou serieux.
Les distributions possedent une quantité de programme suffisamment enorme pour que le cas du “et merde, j’ai pas ce programme en package sur ma distrb’” n’arrive que très rarement.

Sur ma debian sid, je compile seulement xawtv4 et mplayer. C’est tout.
Tout le reste vient en paquets binaires.

idem mplayer que je compile certain jeux aussi
compiler c est rare maintenant quand meme (sur gentoo moins je crois mais a verifier c est gentoo qu on compile me semble)

Sous Gentoo on compile tout (sauf les logiciels proprio bien sur), mais c’est totalement automatisé via un gestionnaire de “package”, donc c’est aussi simple qu’une distrib binaire (sauf a installer).