Installation globale de Composer (manuel)

84

J'ai suivi composer manuel (installation globale de composer (manuel)) pour installer composer sur Ubuntu.

$ ll /usr/local/bin/
total 4760
drwxr-xr-x  2 root root    4096 2012-03-29 08:29 ./
drwxr-xr-x 10 root root    4096 2011-04-26 00:50 ../
-rwxr-xr-x  1 root root  410324 2012-03-29 08:28 composer.phar

Autres scripts d' /usr/local/bin/œuvres, mais compositeur donne:

$php composer.phar update Could not open input file: composer.phar

Cela ne fonctionne que si je saisis le chemin absolu vers composer.phar. Comment régler ceci?

Umpirsky
la source

Réponses:

29

Ne pas ajouter phpau début. Il suffit d'appeler composer.phar.

garakkio
la source
Ça marche, merci. Explication serait génial, je suis curieux. Merci encore.
Umpirsky
2
Cela fonctionne parce que composer est déjà un exécutable (il a u + x droits par défaut). Donc, pas besoin d'exécuter php, car shell le fera quand même.
netvision73
3
Et il y a un code spécial sur la première ligne de composer.phar, #!/usr/bin/env phpqui indique à Ubuntu que le fichier est un fichier php et qu'il doit être exécuté avec le programme php.
T0xicCode
197

TLDR;

Comme décrit sur le site Web Composer :

curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer

Méthode manuelle

J'ai trouvé un moyen plus facile d'installer globalement composer que le manuel proscrit dans le github readme.md . C'est en fait sur le site getcomposer.org :

curl -s http://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/

Et si vous êtes encore plus paresseux, comme moi, vous pouvez créer un alias:

alias composer='/usr/local/bin/composer.phar'

De cette façon, vous pouvez appeler un compositeur avec juste composer

chrisjlee
la source
12
Agréable. Le pseudonyme est une touche de douceur pour les compulsifs obsessionnels aussi. Taper dans les extensions de fichiers? Pfeh! C'est pour chumps
eggonlegs
4
La paresse, mère de la créativité. La dernière mise à jour est la meilleure!
Pierre de LESPINAY
lorsque j'exécute $ sudo mv composer.phar /usr/local/bin/composer, puis que j'essaie de taper, $ composerj'obtiens le message d'erreur suivant: bash: /usr/local/bin/composer: Permission deniedcomment modifier ces autorisations
Connor Leech
@ConnorLeech Vous pouvez exécuterchmod +x /usr/local/bin/composer
Chibueze Opata
1
@ KimStacks Je pense qu'il est logique de garder le contexte.
chrisjlee
28

En fait, getcomposer.org recommande maintenant une méthode plus simple:

$ curl -sS https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer

Maintenant, vous pouvez simplement utiliser composersans vous embêter avec un alias ou un shscript séparé .

BenjaminRH
la source
C'est correct.
Jack Franzen
7

Une autre alternative pour obtenir une composercommande agréable au lieu de composer.phar:

$ curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin
$ ln -s /usr/local/bin/composer.phar /usr/local/bin/composer
Michael Härtl
la source
4
Vous pouvez même utiliser --filename = composer pour sauvegarder la partie
symlink
5

pour une exécution plus facile, j'ai créé / usr / local / bin / composer avec le contenu suivant:

#!/bin/sh
exec /usr/local/bin/composer.phar "$@"

ne pas oublier sudo chmod +x /usr/local/bin/composer.phar

bazilio91
la source
3

Voici les étapes à suivre pour installer composer globalement: 1. Avant d'installer Composer, assurez-vous que toutes les dépendances sont installées sur notre serveur.

Tout d'abord, mettez à jour le cache du gestionnaire de paquets en lançant:

$ sudo apt-get update

2. Maintenant, installons les dépendances. Nous aurons besoin

  • curl => télécharger Composer
  • php5-cli => l'installer et l'exécuter
  • git => utilisé par Composer pour télécharger les dépendances du projet

Tout peut être installé avec la commande suivante:

$ sudo apt-get install curl php5-cli git

3. Installation du compositeur avec une seule commande:

curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer

4. Ceci téléchargera et installera Composer en tant que commande système appelée composer, sous / usr / local / bin. La sortie devrait ressembler à ceci:

Sortie:

\#!/usr/bin/env php
All settings correct for using Composer
Downloading...

Composer successfully installed to: /usr/local/bin/composer

Utilisez-le: php / usr / local / bin / composer

5. Pour tester votre installation, exécutez:

$ composer -V

Sortie:

Composer version 1.1.3 2016-06-26 15:42:08
  1. Installation réussie
Ravistm
la source
0

J'ai créé un script bash simple qui installe automatiquement composer pour l'utilisateur actuel / tous les utilisateurs. Vous pouvez utiliser l'une des commandes suivantes de votre terminal pour utiliser le script bash.

Utilisateur actuel

wget -O - https://gist.github.com/EmpireWorld/1dd5f59566e186907f99dc16badc382a/raw/install-composer-local.sh | bash

Tous les utilisateurs

wget -O - https://gist.github.com/EmpireWorld/1dd5f59566e186907f99dc16badc382a/raw/install-composer-global.sh | bash

Découvrez le Gist

Hasan Bayat
la source
-1

Cela pourrait fonctionner pour vous. Notez que sudoest utilisé deux fois ici.

sudo curl -sS https://getcomposer.org/installer | sudo php
do_do_do
la source
1
Salut! Bienvenue sur Ask Ubuntu. Dans l'état actuel des choses, il est difficile de comprendre pourquoi les commandes pourraient résoudre le problème rencontré par le PO. Pouvez-vous éditer votre question et développer votre réponse?
grooveplex