Installazione globale di Composer (manuale)


84

Ho seguito il manuale del compositore (installazione globale del compositore (manuale)) per installare il compositore su 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

Altri script di /usr/local/bin/opere, ma il compositore dà:

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

Funziona solo se entro nel percorso assoluto composer.phar. Come risolvere questo?

Risposte:


29

Non aggiungere phpall'inizio. Chiama e basta composer.phar.


Funziona, grazie. La spiegazione sarebbe fantastica, sono curioso. Grazie ancora.
umpirsky,

2
Funziona perché il compositore è già un eseguibile (per impostazione predefinita ha diritti u + x). Quindi, non è necessario eseguire php, perché la shell lo farà comunque.
netvision73,

3
E c'è un codice speciale sulla prima riga di composer.phar, #!/usr/bin/env phpche dice a Ubuntu che il file è un file php e dovrebbe essere eseguito con il programma php.
T0xic

197

TLDR;

Come descritto sul sito Web di Composer :

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

Metodo manuale

Ho trovato un modo più semplice per installare globalmente il compositore rispetto al manuale vietato nel github readme.md . In realtà è sul sito Web getcomposer.org :

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

E se sei ancora più pigro, come me, puoi creare un alias:

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

In questo modo puoi invocare il compositore con just composer


12
Bello. L'alias è un tocco dolce anche per le compulsive ossessive. Digitando estensioni di file? Pfeh! Questo è per i brividi
eggonlegs

4
Pigrizia, madre della creatività. L'ultimo aggiornamento è il migliore!
Pierre de LESPINAY,

quando eseguo $ sudo mv composer.phar /usr/local/bin/composere quindi provo a digitare $ composerottengo l'errore: bash: /usr/local/bin/composer: Permission deniedcome posso modificare queste autorizzazioni?
Connor Leech,

@ConnorLeech Puoi correrechmod +x /usr/local/bin/composer
Chibueze Opata

1
@KimStacks Penso che abbia senso tenerlo lì nel contesto.
chrisjlee,

28

In realtà, getcomposer.org ora consiglia un metodo più semplice:

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

Ora puoi semplicemente usarlo composersenza preoccuparti di un alias o di uno shscript separato .


Questo è corretto.
Jack Franzen,

7

Un'altra alternativa per ottenere un bel composercomando invece di 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

4
Puoi anche usare --filename = compositore per salvare la parte symlink :)
magnetik

5

per un'esecuzione più semplice ho creato / usr / local / bin / compositore con contenuto:

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

non dimenticare sudo chmod +x /usr/local/bin/composer.phar


3

Di seguito sono riportati i passaggi da seguire per installare Composer a livello globale: 1. Prima di installare Composer, assicurarsi che sul nostro server siano installate tutte le dipendenze.

In primo luogo, aggiorna la cache del gestore pacchetti eseguendo:

$ sudo apt-get update

2. Ora, installiamo le dipendenze. Avremo bisogno

  • curl => per scaricare Composer
  • php5-cli => installandolo ed eseguendolo
  • git => utilizzato da Composer per scaricare le dipendenze del progetto

Tutto può essere installato con il seguente comando:

$ sudo apt-get install curl php5-cli git

3. Installazione del compositore con un singolo comando:

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

4. Questo scaricherà e installerà Composer come comando a livello di sistema chiamato compositore, sotto / usr / local / bin. L'output dovrebbe essere simile al seguente:

Produzione:

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

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

Usalo: php / usr / local / bin / compositore

5. Per testare l'installazione, eseguire:

$ composer -V

Produzione:

Composer version 1.1.3 2016-06-26 15:42:08
  1. Installazione avvenuta con successo

0

Ho creato un semplice script bash che installa automaticamente compositore per l'utente corrente / tutti gli utenti, è possibile uno dei seguenti comandi nel terminale per utilizzare lo script bash.

Utente corrente

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

Tutti gli utenti

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

Dai un'occhiata a Gist


-1

Questo potrebbe funzionare per te. Si noti che sudoviene utilizzato due volte qui.

sudo curl -sS https://getcomposer.org/installer | sudo php

1
Ciao! Benvenuti in Ask Ubuntu. Allo stato attuale, non è chiaro perché i comandi possano risolvere il problema dell'OP. Puoi per favore modificare la tua domanda ed elaborare la tua risposta?
grooveplex,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.