Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
doc:systeme:apt:paquets [03/02/2016 09:35] milou [Les .deb] |
doc:systeme:apt:paquets [08/10/2017 08:47] (Version actuelle) liberté |
||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
* Objet : Un paquet logiciel, c'est quoi | * Objet : Un paquet logiciel, c'est quoi | ||
- | * Niveau requis : {{tag>débutant}} | + | * Niveau requis : {{tag>débutant avisé}} |
* Commentaires : //Indispensable à connaître pour comprendre l'administration d'une Debian.// | * Commentaires : //Indispensable à connaître pour comprendre l'administration d'une Debian.// | ||
* Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !]] :-) | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !]] :-) | ||
* Suivi : {{tag>à-compléter}} | * Suivi : {{tag>à-compléter}} | ||
- | * Création par [[user>captnfab]] 01/05/2013 | + | * Création par [[user>captnfab]] 23/05/2013 |
* Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=162324#p162324 | Lien vers le forum concernant ce tuto]]((N'hésitez pas à y faire part de vos remarques, ou améliorations !)) | * Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=162324#p162324 | Lien vers le forum concernant ce tuto]]((N'hésitez pas à y faire part de vos remarques, ou améliorations !)) | ||
Ligne 33: | Ligne 33: | ||
Un .deb, c'est une archive au format "ar", qui contient 3 fichiers: un fichier **debian-binary** (indiquant le format du paquet), un fichier **control.tar.gz** (contenant les infos de dépendances, version, description, pré-installation, etc. du paquet), et un fichier **data.tar.gz** (ou **data.tar.bz2**) contenant les fichiers à installer. | Un .deb, c'est une archive au format "ar", qui contient 3 fichiers: un fichier **debian-binary** (indiquant le format du paquet), un fichier **control.tar.gz** (contenant les infos de dépendances, version, description, pré-installation, etc. du paquet), et un fichier **data.tar.gz** (ou **data.tar.bz2**) contenant les fichiers à installer. | ||
- | On peux voir ce que contient un .deb avec la série de commandes suivante : | + | On peut voir ce que contient un .deb avec la série de commandes suivante : |
<code root> | <code root> | ||
mkdir /tmp/prout</code> | mkdir /tmp/prout</code> | ||
Ligne 43: | Ligne 43: | ||
Merci au captnfab pour ce fol instant partagé sur irc dans le chan toujours vivant de #debian-facile((Voir : [[:asso:salon-irc-df | Le salon irc de df]])) | Merci au captnfab pour ce fol instant partagé sur irc dans le chan toujours vivant de #debian-facile((Voir : [[:asso:salon-irc-df | Le salon irc de df]])) | ||
- | ==== Dépendance ==== | + | ===== Dépendances ===== |
- | Il était une fois... le mariage d'un logiciel (libre) avec une librairie (libre aussi) dont il va dépendre pour fonctionner : | + | Un paquet Y est une **dépendance** du paquet X s'il faut absolument que Y soit installé pour pouvoir faire fonctionner X. |
- | - 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. | + | //Illustrons cela par une petite histoire : // |
- | - 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. | + | Il était une fois... le mariage d'un logiciel (libre) avec une bibliothèque (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 bibliothèque ''libpng12-0'' est ainsi devenue une dépendance de ''feh''. | ||
Il existe plusieurs niveaux de dépendance entre deux paquets Debian X et Y : | Il existe plusieurs niveaux de dépendance entre deux paquets Debian X et Y : | ||
Ligne 80: | Ligne 84: | ||
Par exemple, pour un programme écrit en langage C, la construction dépend d'un compilateur C. Mais pas 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. | ||
- | ==== Bibliothèques ==== | + | ===== Bibliothèques ===== |
+ | |||
+ | //Quoi, y'a des bouquins dans mon ordi et on ne pas pas prévenu ? 8-o \\ | ||
+ | Non, mais presque ;-)// | ||
+ | |||
+ | Une bibliothèque logicielle est une collection de fonctions, qui peut être déjà compilée et prête à être utilisée par des programmes((Dixit [[https://fr.wikipedia.org/wiki/Biblioth%C3%A8que_logicielle|Wikipedia]])). Les bibliothèques, qu'on trouve sous forme de paquets elles aussi, ne sont pas utilisées seules, mais sont des dépendances d'autres paquets. | ||
+ | |||
+ | <note tip>En Français, on voit souvent utilisé le mot //librairie// à la place de //bibliothèque//. Cela provient d'une erreur de traduction, car en anglais, //bibliothèque// se dit //library//. </note> | ||
- | Concernant les bibliothèques, cette distinction existe aussi à travers les deux cas suivants : | + | Ces bibliothèques vont être liées au programme via l'éditeur de lien. On va distinguer deux types de liaison : |
- 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 **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). | - 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). | ||
- | ===== Lien vers le forum ===== | + | ==== Lien vers le forum ==== |
[[https://debian-facile.org/viewtopic.php?pid=162187#p162187 | Donc, les dépendances… Nous disions : dépendances. Ah ! Je sèche !]] | [[https://debian-facile.org/viewtopic.php?pid=162187#p162187 | Donc, les dépendances… Nous disions : dépendances. Ah ! Je sèche !]] | ||