Installer quelque chose dans Windows prend un clic sur un bouton. Mais chaque fois que j'essaye d'installer quelque chose sous Linux, qui ne se trouve pas dans APT, je suis tellement confus.
Vous téléchargez un dossier compressé, alors quoi? Si vous êtes chanceux, il existe un fichier README, en vous référant à une documentation qui pourrait vous aider, si vous avez de la chance.
Quel est le tour de magie lors de "l'installation" d'extensions et d'applications qui ne se trouvent pas dans APT?
J'adore Linux, mais ce problème me hante tous les jours.
software-installation
directory-structure
Marcus Johansson
la source
la source
Réponses:
S'il est un logiciel qui obéit à la norme de hiérarchie Filesystem que vous devez placer dans
/usr/local
et les sous - répertoires appropriés (commebin
,lib
,share
, ...).Les autres logiciels doivent être placés dans leur propre répertoire sous
/opt
. Définissez ensuite votrePATH
variable pour inclure lebin
répertoire ou le répertoire contenant les exécutables, ou créez des liens symboliques vers/usr/local/bin
.la source
Il n’ya pas de réponse simple à cette question, mais je peux vous donner un aperçu général de son fonctionnement:
La plupart des logiciels Linux sont fournis par les auteurs ("l'amont") sous forme de code source. Cela permet à tous ceux qui disposent d'un compilateur pour leur plate-forme et leur configuration système de télécharger le code source et de le compiler eux-mêmes. Malheureusement pour vous, de nombreux programmes s'appuient sur des fonctions fournies par d'autres programmes et bibliothèques de logiciels (dépendances).
Les logiciels Windows sont généralement précompilés. Cela signifie qu'il existe un fichier exécutable générique pour tous les ordinateurs Windows et que les dépendances sont souvent incluses dans le package d'installation.
Les distributions Linux prennent le code source, le précompilent pour vous et vous le proposent également sous forme de paquet. Le paquet n'inclut pas les dépendances, mais il y fait référence et oblige également le système à les installer (ce qui peut parfois entraîner des erreurs que vous avez probablement déjà expérimentées vous-même).
S'il n'y a pas de paquet précompilé, vous pouvez toujours télécharger le code source et le compiler vous-même. La plupart du temps, ce qui suit fonctionnera:
La ligne ./configure définit l'étape du processus de compilation (et génère des erreurs si les dépendances ne sont pas remplies). La ligne make exécutera le Makefile, un script qui compile toutes les parties du programme.
Traditionnellement, vous utiliseriez make install pour installer ensuite le logiciel. Cela met généralement les exécutables dans / usr / local / bin.
Puisque vous utilisez apt, je vous recommande vivement de vous procurer checkinstall. Vous pouvez l'utiliser à la place de make install, et il générera un paquet .deb pour vous. Cela facilite grandement la suppression proprement du logiciel ultérieurement.
Notez qu'il existe une poignée d'autres systèmes de compilation, par exemple cmake; et certains logiciels sont précompilés mais non compressés (dans ce cas, vous pouvez le démarrer directement à partir du dossier décompressé); et certains logiciels viennent comme une collection de scripts que vous devez exécuter vous-même. Le nouveau code de SVN est parfois livré sans scripts de configuration, vous devez donc d'abord exécuter la chaîne d'outils autoconf ... etc, etc ... vous voyez qu'il existe de nombreuses exceptions à la règle, mais avec un peu d'expérience, vous pourrez dire quoi faire avec la plupart de ces téléchargements mystérieux. Configure-Make-Checkinstall est un bon début.
PS Passez un week-end ou deux à apprendre à vous programmer, et les choses deviendront très évidentes :-)
PPS. Vous vous demandez peut-être pourquoi les auteurs de logiciels Linux ne fournissent pas simplement des packages précompilés à la place du code source. Eh bien, ils le font parfois. Mais différentes plates-formes et distributions Linux ont toutes leurs propres formats de paquet et règles de système de fichiers. Par conséquent, en tant que développeur, vous devez fournir des paquetages pour toutes les configurations possibles, ce qui est pénible. Cependant, les paquets Ubuntu sont souvent les plus faciles à trouver - vous devriez savoir ce qu'est un PPA et comment il fonctionne!
la source
Vous devriez vérifier checkinstall . Au lieu de
tu fais
et vous serez capable de gérer ce paquet comme si vous l'aviez installé avec apt.
la source
Il y a une raison valable et raisonnable qui est si déroutante (il y a aussi une raison d'artefact agaçante) ...
Unix est réputé être multi-utilisateur et la plupart des utilisateurs n’avaient pas le droit d’installer des applications en dehors des zones pour lesquelles un accès spécifique leur avait été accordé.
La théorie serait donc que vous construisiez quelque chose dans votre répertoire personnel, puis que vous le copiez dans une zone que vous contrôliez (votre propre zone de projet ou une zone partagée).
Les PC Windows sont généralement des systèmes mono-utilisateur et n’ont pas cette contrainte, tout passe dans Program Files quoi qu’il en soit.
Ensuite, il y a le fait stupide et ennuyant que chaque fois qu'une nouvelle version d'Unix est sortie, les créateurs ont jugé nécessaire de changer de lieu, mais les anciennes devaient toujours être là pour les scripts automatisés. Cela vous donne un tas de répertoires liés servant le même but.
Le système init est encore pire.
la source