[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
wiki:user:kikinovak [2014/02/17 06:53 (UTC)] kikinovakwiki:user:kikinovak [2014/02/20 06:38 (UTC)] (current) kikinovak
Line 57: Line 57:
  
  
-==== Compiler des paquets tiers ==== 
  
-Comparé à des distributions comme Ubuntu ou Debian, Slackware n'offre qu'un choix de paquets relativement limité. On en arrivera très vite au point de vouloir installer une application ou une bibliothèque qui n'est pas fournie par la distribution. Dans ce cas, que faire ? 
  
-Le portail SlackBuilds.org (http://slackbuilds.org) sera sans doute la meilleure adresse pour trouver des paquets tiers. Attention, SlackBuilds.org n'est //pas// un dépôt de paquets binaires. Il s'agit plutôt d'une collection extrêmement bien fournie de scripts de compilation dûment soignés et testés, qui vous permettent de compiler à peu près n'importe quel paquet Slackware en un tournemain.  
  
-   
-=== Compiler des paquets à partir des scripts de SlackBuilds.org === 
- 
-Dans l'exemple, nous allons compiler et installer le paquet ''cowsay'' à partir des scripts fournis par SlackBuilds.org.  
- 
-Aller dans l'environnement de construction de paquets que nous avons défini plus haut : 
- 
-<code> 
-# cd /root/source 
-</code> 
- 
-À partir de là, télécharger : 
- 
-  - l'archive compressée contenant les scripts pour construire le paquet ; 
-  - l'archive compressée contenant le code source du paquet.  
- 
-Concrètement : 
- 
-<code> 
-# links http://slackbuilds.org 
-</code> 
- 
-  - Dans le champ de recherche en haut à gauche, taper ''cowsay'', placer le curseur sur ''Search'' et confirmer par <key>Entrée</key>. 
-  - Dans la page des résultats de la recherche, suivre le lien ''cowsay''. 
-  - Sur la page de ''cowsay'', télécharger le SlackBuild (''cowsay.tar.gz'') et le code source (''cowsay-3.03.tar.gz'') et quitter Links. 
- 
-<note tip>Alternativement, vous pouvez utiliser ''lynx'' au lieu de ''links''.</note> 
- 
-Voici nos deux archives téléchargées : 
- 
-<code> 
-# ls -l cowsay* 
--rw-r--r-- 1 root root 15136 nov.  25 08:14 cowsay-3.03.tar.gz 
--rw-r--r-- 1 root root  2855 nov.  25 08:14 cowsay.tar.gz 
-</code> 
- 
-Décompresser l'archive contenant les scripts : 
- 
-<code> 
-# tar xvzf cowsay.tar.gz  
-cowsay/ 
-cowsay/cowsay.SlackBuild.patch 
-cowsay/README 
-cowsay/slack-desc 
-cowsay/cowsay.SlackBuild 
-cowsay/cowsay.info 
-</code> 
- 
-À la limite, on peut faire un peu de ménage et supprimer l'archive qui ne sert plus à rien : 
- 
-<code> 
-# rm -f cowsay.tar.gz 
-</code> 
- 
-Puis, déplacer le code source dans le répertoire nouvellement créé : 
- 
-<code> 
-# mv -v cowsay-3.03.tar.gz cowsay/ 
-« cowsay-3.03.tar.gz » -> « cowsay/cowsay-3.03.tar.gz » 
-</code> 
- 
-Voici ce que l'on doit avoir : 
- 
-<code> 
-# tree cowsay 
-cowsay 
-|-- cowsay-3.03.tar.gz 
-|-- cowsay.info 
-|-- cowsay.SlackBuild 
-|-- cowsay.SlackBuild.patch 
-|-- README 
-`-- slack-desc 
-</code> 
- 
-Changer dans le répertoire, vérifier éventuellement si le script ''cowsay.SlackBuild'' est bien exécutable, puis exécuter ce script pour lancer la construction du paquet : 
- 
-<code> 
-# cd cowsay/ 
-# ls -l cowsay.SlackBuild 
--rwxr-xr-x 1 kikinovak users 1475 mai   27  2010 cowsay.SlackBuild* 
-# ./cowsay.SlackBuild 
-... 
-</code> 
- 
-Là encore, si tout se passe bien, l'opération produit un paquet dans ''/tmp'', et plus exactement dans le répertoire ''$OUTPUT'' défini par le script : 
- 
-<code> 
-... 
-Slackware package /tmp/cowsay-3.03-noarch-1_SBo.tgz created. 
-</code> 
- 
-Il ne reste qu'à installer ce paquet avec ''installpkg'' : 
- 
-<code> 
-# installpkg /tmp/cowsay-3.03-noarch-1_SBo.tgz  
-# cowsay Et voilà !  
- ------------- 
-< Et voilà ! > 
- -------------  
-        \   ^__^ 
-          (oo)\_______ 
-            (__)\       )\/\ 
-                ||----w | 
-                ||     || 
-</code> 
- 
-=== Gérer les dépendances de paquets === 
- 
-Certains paquets nécessitent la présence d'autres paquets sur le système pour compiler (//build dependencies//) et/ou fonctionner (//runtime dependencies//) correctement. Dans certains cas, un paquet requis peut lui-même dépendre d'autres paquets, et ainsi de suite.  
- 
-À titre d'exemple, jetons un oeil sur la page de ''libgnomeprint'' de SlackBuilds.org. La description du paquet est suivie d'un avertissement : 
- 
-<code> 
-This requires: libgnomecups. 
-</code> 
- 
-Chaque collection de scripts contient par ailleurs un fichier ''*.info'' qui explicite le ou les paquets requis. Jetons un oeil sur le fichier ''libgnomeprint.info'', et nous y trouvons un champ ''REQUIRES'' : 
- 
-<code> 
-PRGNAM="libgnomeprint" 
-VERSION="2.18.8" 
-HOMEPAGE="http://www.gnome.org" 
-... 
-REQUIRES="libgnomecups" ----> dépendances du paquet 
-... 
-</code> 
- 
-<note>Le champ ''REQUIRES'' a été introduit depuis Slackware 14.0.</note> 
- 
-Cela signifie tout simplement qu'avant de construire le paquet ''libgnomeprint'', nous devons impérativement construire et installer le paquet ''libgnomecups''. 
- 
-En dehors des dépendances requises, un paquet peut également présenter des dépendances optionnelles, qui ajoutent certaines fonctionnalités. L'éditeur Leafpad, par exemple, peut être construit avec les dépendances optionnelles ''libgnomeprint'' et ''libgnomeprintui''. 
  
 ==== Gérer les paquets tiers confortablement avec sbopkg ==== ==== Gérer les paquets tiers confortablement avec sbopkg ====
 wiki:user:kikinovak ()