Vous n'êtes pas identifié(e).
Hors ligne
Dernière modification par Frosch (01-02-2016 23:27:40)
Hors ligne
Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.
Hors ligne
libraries qui est traduit en librairies alors que bibliothèques est plus juste il me semble.
Au sens premier du terme, c'est certain : library=bibliothèque, tandis que librairie=bookshop.
Hors ligne
ces bibliothèques sont des programmes contenant des fonctions utilisables par d'autres pour réaliser certaines tâches.
Le but est de ne pas dupliquer ces fonctions dans chaque programme qui les utilise. Le revers de la médaille, c'est que ces programmes ne peuvent pas fonctionner seuls : ils dépendent des bibliothèques dont ils utilisent les fonctions. Les dépendances entre paquets sont un moyen d'assurer que tous les paquets nécessaires au fonctionnement d'un autre paquet soient installés aussi.
Exemple, si tu veux installer un environnement de bureau, il te faut au préalable un serveur graphique (les fameux paquets commencant par xserver-xorg).
Mauvais exemple car il est faux. xserver-xorg n'est qu'une recommandation des environnements de bureau, pas une dépendance forte. En effet le serveur graphique peut être déporté sur une autre machine.
Il vaut mieux montrer que raconter.
Hors ligne
Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.
Hors ligne
Exemple, si tu veux installer un environnement de bureau, les fameux paquets commencant par xserver-xorg te seront recommandés pour un serveur graphique classique installé sur la même machine.
À peu près... Car cette situation éclaire facile le principe expliqué, me semble-t'il...
saque eud dun (patois chtimi : fonce dedans)
Hors ligne
[qu']elle implémente une interface pour lire et écrire les fichiers au format PNG (Portable Network Graphics)
Le développeur de feh veut que son logiciel puisse lire, entre autres formats, le PNG. Il se trouve qu'un autre développeur a déjà écrit du code permettant de faire cela. Comme ce dernier l'a placé sous licence libre, le développeur de feh n'est pas obligé de se casser la tête et de réécrire à nouveau du code pour lire les fichiers au format PNG, il n'a qu'à utiliser celui de la libpng12-0.
Lorsqu'il crée son paquet Debian de feh, il indique donc que ce dernier a besoin de la libpng12-0 pour fonctionner correctement.
La libpng12-0 est donc, de fait, une dépendance de feh
Hors ligne
Il était une fois... le mariage d'un logiciel (libre) avec une librairie (libre aussi) dont il va dépendre pour fonctionner :
Le développeur de feh (développeur = créateur) veut que son logiciel (un visionneur d'image léger) puisse lire aussi le PNG.
Un autre développeur a déjà écrit du code sous licence libre permettant de faire cela, le développeur de feh peut donc l'utiliser avec feh.
Il indique simplement que feh a besoin de la libpng12-0 pour fonctionner correctement et le tour est joué.
La librairie libpng12-0 est ainsi devenue une dépendance de feh.
Bon, j'suis pas sûr de mon raccourci dans cette refonte mais je me marre bien ici !
Edit :
Bien vu sogal, c'est corrigé.
Dernière modification par smolski (02-02-2016 12:06:43)
saque eud dun (patois chtimi : fonce dedans)
Hors ligne
Ah mais c'est pour un bouquin cette (excellente) démonstration
Oui c'est pour le Cahier de l'Admin du Débutant Debian
Bien la petite histoire, j'aurai juste tatouiller :
Un autre développeur a déjà écrit du code sous licence libre permettant de faire cela, le développeur de feh peut donc l'utiliser avec feh.
J'ai enlevé "l'ajouter" car cela pourrait laisser penser qu'il inclut le code de la libpng dans celui de feh alors qu'il ne fait que "lier", en quelque sorte, les 2 codes.
Hors ligne
Je serais intéréssé par une explication sur ce qu'est une dépendance forte aussi.
Je désigne ainsi une dépendance de type "dépend". Il existe plusieurs niveaux de dépendance entre deux paquets Debian X et Y :
- dépend : X ne peut être installé que si Y est installé
- recommande : l'installation de X recommande l'installation de Y
- suggère : l'installation de X suggère l'installation de Y
- conflit : X ne peut pas être installé si Y est installé et vice versa
et peut-être d'autres que j'oublie.
Par défaut, apt-get installe les paquets recommandés mais pas les paquets suggérés. Donc par défaut l'installation d'un environnement de bureau installera le serveur graphique X.org.
Lorsqu'il crée son paquet Debian de feh, il indique donc que ce dernier a besoin de la libpng12-0 pour fonctionner correctement.
La libpng12-0 est donc, de fait, une dépendance de feh
Il faut distinguer deux cas : les dépendances à la construction et les dépendances à l'exécution.
Par exemple, pour un programme écrit en langage C, la construction dépend d'un compilateur C. Mais pas l'exécution.
Concernant les bibliothèques, cette distinction existe aussi à travers les deux cas suivants :
- Liaison statique : les fonctions des bibliothèques utilisées par le programme sont incluses dans ce dernier lors de la construction. Il n'a pas besoin des bibliothèques lors de l'exécution. Exemple : busybox-static.
Avantages : programme indépendant, évite les problèmes d'incompatibilités entre versions d'une même bibliothèque, parfois gain de place quand un programme est le seul à dépendre d'une bibliothèque dont il n'utilise que quelques fonctions (seules ces fonctions sont incluses dans le programme au lieu d'installer la bibliothèque complète).
- Liaison dynamique : les fonctions des bibliothèques utilisées par le programme ne sont pas incluses dans ce dernier lors de la construction. Il a besoin de la bibliothèque lors de l'exécution.
Avantages : gain de place (les fonctions des bibliothèques sont partagées au lieu d'être dupliquées), simplicité de mise à jour (la correction d'un bug d'une bibliothèque ne nécessite pas de mettre à jour tous les programmes qui l'utilisent).
Dernière modification par raleur (02-02-2016 09:55:09)
Il vaut mieux montrer que raconter.
Hors ligne
Avantages : gain de place (les fonctions des bibliothèques sont partagées au lieu d'être dupliquées), simplicité de mise à jour (la correction d'un bug d'une bibliothèque ne nécessite pas de mettre à jour tous les programmes qui l'utilisent).
Là je ne comprends pas du tout, ça me semblait être, au contraire, les avantages d'une liaison dynamique :-/
Hors ligne
Il vaut mieux montrer que raconter.
Hors ligne
Hors ligne
Par défaut, apt-get installe les paquets recommandés mais pas les paquets suggérés. Donc par défaut l'installation d'un environnement de bureau installera le serveur graphique X.org.
Mon erreur vient effectivement de là, c'était le comportement dont je me souvenais lors d'une installation à partir d'une Debian minimale, et c'est donc une conséquence de la configuration par défaut de Apt.
Il est vrai qu'un bon réflexe de ma part aurait été de vérifier ces informations sur le paquet avec quelque chose comme ceci
ce qui permet de montrer à @Raphaël une partie du retour de cette commande, qui donne les informations dont parle raleur
@Raphaël : Si tu veux des précisions sur Apt, tu peux jeter un œil au wiki. N'hésites pas à nous faire des retour si tu vois qu'il y manque quelque chose. Pour ma part, j'y ajouterais bien la définition d'une dépendance, puisqu'elle ne semble pas y figurer
Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.
Hors ligne
Si tu veux des précisions sur Apt, tu peux jeter un œil au wiki. (…) Pour ma part, j'y ajouterais bien la définition d'une dépendance, puisqu'elle ne semble pas y figurer
J’approuve à 100%, la compréhension du système de dépendances étant à mon avis *essentielle* à la compréhension plus générale du système de paquets de Debian.
Dernière modification par vv222 (02-02-2016 14:00:59)
Hors ligne
Hors ligne
(Mais il semble que tu ais parfaitement compris)
Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.
Hors ligne
saque eud dun (patois chtimi : fonce dedans)
Hors ligne
Par défaut, apt-get installe les paquets recommandés mais pas les paquets suggérés.
Par exemple sur ma debian les paquets :
Paquets suggérés :
Paquets recommandés :
ne sont pas installés par défaut.
Il est conseillé d'installer les Paquets recommandés ?
En Stable oui apparemment mais en Testing, Unstable ?
En lisant la doc sur apt.conf c'est expliqué
Merci pour ce beau fil
Dernière modification par Atys (03-02-2016 10:18:31)
La liberté d’expression est un droit fondamental ouvert à tous les citoyens dans le respect des lois.
Hors ligne
Hors ligne