Comment installer des paquets tarball sur une distribution basée sur Debian?

19

Je voudrais savoir comment installer les paquets .tar.bz et .tar.bz2 sur Debian, veuillez me donner une explication complète.

Zignd
la source
2
Ce sont des archives. Vous devez les déballer et voir les instructions à l'intérieur. Habituellement , il est ./configure, make, make installmais je suis sûr que quelqu'un va fournir une meilleure réponse à vous, avec des liens où vous pouvez apprendre ces choses très simples avant d'essayer quoi que ce soit à build
Zetah
3
Selon ce que vous souhaitez installer, vous devez également installer le package build-essential et les packages -dev des bibliothèques utilisées par le logiciel. Veillez à installer le préfixe / usr / local / (qui est normalement la valeur par défaut), sinon vous risquez de corrompre votre système. Pour un débutant, je vous suggère fortement de vous limiter aux paquets disponibles de Debian. La prochaine étape serait de rechercher les logiciels déjà packagés (packages .deb) et de les installer ensuite à la main dpkg -i ./path/to/package.deb. L'utilisation des packages .tar. {Gz, bz2} est la dernière et la plus difficile option.
jofel
@jofel Je suis d'accord avec vous, mais certains programmes ne sont pas disponibles dans un package .deb et vous ne pouvez l'installer qu'à partir du code source (par exemple Firefox).
Zignd
1
Firefox est très certainement disponible dans les référentiels et a rarement besoin d'être construit à partir des sources.
Daemon of Chaos
1
Si vous souhaitez installer à partir de sources à la main, la chose la plus difficile est souvent d'installer les bonnes dépendances. Si README ou INSTALL ne les répertorie pas, vous pouvez avoir besoin d'exécuter le script ./configure à la main (pour les systèmes de construction basés sur autoconf). S'il échoue avec "vérification de xyz: Non", "xyz introuvable" ou similaire, installez le paquet libxyz-dev (sur les systèmes basés sur Debian) et réessayez. Si le package n'existe pas, vous devez soit trouver le package correct, soit installer manuellement la bibliothèque nécessaire. Parfois, vous devez sélectionner une version de bibliothèque spécifique.
jofel

Réponses:

30

Premièrement, selon les normes de hiérarchie du système de fichiers , l'emplacement de ce package installé doit être /opts'il s'agit d'une installation binaire et /usr/locals'il s'agit d'une installation à partir de la source.

Binaires purs

Ce sont des binaires prêts à l'emploi. Normalement, il suffit de les extraire pour les installer. Un paquet binaire va être facile:

  • sudo tar --directory=/opt -xvf <file>.tar.[bz2|gz]
  • ajoutez le répertoire à votre chemin: export PATH=$PATH:/opt/[package_name]/bin

et vous avez terminé.

De sources

Un package source va être de plus en plus gênant (de loin) et grâce à leur traitement approximatif avec la méthode ci-dessous, chaque package est différent :

  • téléchargez le package sur /usr/local/src
  • tar xf <file>.tar.[bz2|gz]
  • cd <package name>
  • lire le READMEfichier (cela existe presque certainement).
  • la plupart des projets Open Source utilisent autoconf / automake, les instructions doivent être dans le README. Probablement, cette étape ira: ./configure && make && make install(exécutez les commandes séparément pour raison si quelque chose ne va pas).

S'il y a des problèmes dans l'installation, vous devrez poser des questions spécifiques. Vous pourriez avoir des problèmes de versions incorrectes des bibliothèques ou des dépendances manquantes. Il y a une raison pour laquelle Debian organise tout pour vous. Et il y a une raison pour laquelle Debian stable exécute d'anciens paquets - trouver tous les cas d'angle d'installation de paquets sur plus d'une douzaine d'architectures différentes et d'innombrables configurations matérielles / systèmes différentes est difficile. Lorsque vous installez quelque chose par vous-même, vous pourriez rencontrer l'un de ces problèmes!

dave
la source
2
J'ai rendu la commande tar plus facile! Vous n'avez pas besoin de cd / opt. Au lieu de cela, cd à l'emplacement de l'archive tar et utilisez l' option tar -Cou --directory.
Jess
1
Ah et n'oubliez pas sudo: D
Jess
10

Décompressez les fichiers puis, dans le répertoire qui a été créé, recherchez un fichier READMEou INSTALLqui vous dira ce que vous devez savoir pour installer un package (par exemple les dépendances, les options de configuration, les commandes à exécuter etc ...).

Habituellement, cela se résume à ./configure, makealors make install.

Renan
la source
3
Notez que la construction échouera très probablement lors de la configuration. Pourquoi? Parce que la source que vous avez téléchargée a probablement des dépendances de temps de construction que vous n'avez pas installées. Sur Debian / Ubuntu, si le paquet est également disponible avec apt, vous pouvez les installer avec: sudo apt-get build-dep nom-paquet
anonfunc
7

La façon standard de procéder est la suivante:

  1. tar zxvf file.tar.gz ou tar xvjpf file.tar.bz2
  2. exécuter ./configure ( ./configure --helpdonne généralement des options de personnalisation)
  3. courir make
  4. courir make install

Il existe généralement un fichier README ou INSTALL qui donne également des instructions.

bigdaveyl
la source
5

De manière générale, lorsque vous installez tar.gz / tgz / tar / bz2 (rappelez-vous, ce ne sont que des fichiers de package compressés), vous devez ouvrir le fichier tar ( tar xvfz/ tar xvfj), puis cddans le répertoire et exécuter ./configure.

Sur certains systèmes, vous prenez soit les valeurs par défaut (/ usr / local / {lib, bin, etc ...} par exemple) comme emplacement d'installation par défaut, soit vous pouvez utiliser / opt / local / {lib, bin, etc}.

Donc , vous feriez ./configure --prefix=/usr/localpuis make, make install.

C'est à vous de décider où vous souhaitez installer vos packages. N'oubliez pas que chaque fois que vous décidez de le faire, vous souhaiterez peut-être ajouter le chemin d'accès à votre variable shell PATH afin que vous puissiez facilement exécuter ces packages. (souvent export PATH=$PATH:/opt/local/bin:/usr/local/bin).

Mark Cohen
la source
2

Permettez-moi d'illustrer cela avec un exemple, disons que vous souhaitez installer un package abc. Les dépendances du package abcpeuvent être identifiées en lisant sa documentation. Vous devez résoudre les dépendances (bibliothèques requises, etc.) avant l'installation pour une expérience fluide.

Avant une gcc 4.7.2construction du g++, m4, gawk, gcc-multilib, gmp, mpfret mpcdoit être construit.

Vient ensuite le bâtiment de la pièce source dont la première étape est toujours l'extraction. Cela peut être fait en utilisant la tarcommande ou par la manière simple de l'interface graphique. Une fois que vous avez les fichiers extraits dans un dossier, vous devez accéder à ce dossier à l'aide de la cdcommande, par exemple si le contenu est dans Téléchargements, puis:

$cd Downloads/abc

Vous devez maintenant courir ./configure. Spécifiez le répertoire d'installation en utilisant l' --prefix=option avec configure.

Premièrement, selon les normes de hiérarchie du système de fichiers, l'emplacement de ce package installé doit être / opt s'il s'agit d'une installation binaire et / usr / local s'il s'agit d'une installation source.

donc si vous installez dans le /usr/abcrépertoire, vous fournirez l'option --prefix=/usr/abcavec l' ./configureinstruction.

$./configure --prefix=/usr/abc

--prefix=n'est pas la seule chose que vous voudrez peut-être spécifier, vous pouvez fournir d'autres informations pour une compilation réussie comme le type de votre système --build=x86_64-linux-gnupour 64 bits et --build=i386-linux-gnupour un système 32 bits. Il est sage de lire le fichier README dans les fichiers extraits car il peut contenir les informations sur les options à spécifier avec la ./configurecommande.

Après l' ./configureexécution, la makecommande, puis le make install. Après l'installation, vous devez spécifier le chemin de la bibliothèque, les variables shell / environnement à l'aide de la exportcommande.

export PATH=/usr/abc/bin:$PATH
Balistique
la source