Instalação global do Composer (manual)

84

Eu segui o manual do compositor (instalação global do compositor (manual)) para instalar o compositor no 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

Outros scripts de /usr/local/bin/obras, mas o compositor fornece:

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

Funciona apenas se eu inserir o caminho absoluto para composer.phar. Como consertar isto?

umpirsky
fonte

Respostas:

29

Não adicione phpno começo. Basta ligar composer.phar.

garakkio
fonte
Funciona, obrigado. A explicação seria ótima, estou curiosa. Obrigado novamente.
umpirsky
2
Funciona porque o compositor já é um executável (possui direitos u + x por padrão). Portanto, não é necessário executar o php, porque o shell fará isso de qualquer maneira.
netvision73
3
E há um código especial na primeira linha do composer.phar, #!/usr/bin/env phpque informa ao ubuntu que o arquivo é um arquivo php e deve ser executado com o programa php.
T0xicCode
197

TLDR;

Conforme descrito no site do Composer :

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

Método manual

Encontrei uma maneira mais fácil de instalar globalmente o compositor do que o manual prescrito no github readme.md . Na verdade, está no site getcomposer.org :

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

E se você for ainda mais preguiçoso, como eu, poderá criar um alias:

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

Dessa forma, você pode invocar o compositor com apenas composer

chrisjlee
fonte
12
Agradável. O alias também é um toque agradável para os compulsivos obsessivos. Digitando extensões de arquivo? Pfeh! Isso é para
idiotas
4
Preguiça, mãe da criatividade. Última atualização é a melhor!
Pierre de LESPINAY
quando executo $ sudo mv composer.phar /usr/local/bin/composere tento digitar $ composer, recebo o erro: bash: /usr/local/bin/composer: Permission deniedComo posso alterar essas permissões?
Connor Sanguessuga
@ConnorLeech Você pode executarchmod +x /usr/local/bin/composer
Chibueze Opata
11
@KimStacks Acho que faz sentido mantê-lo no contexto.
Chrisjlee # 28/14
28

Na verdade, o getcomposer.org agora recomenda um método mais simples:

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

Agora você pode usar composersem se preocupar com um alias ou um shscript separado .

BenjaminRH
fonte
Isto está correto.
Jack Franzen 5/05
7

Outra alternativa para obter um bom composercomando em vez 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
fonte
4
Você ainda pode usar --filename = compositor para salvar o link simbólico parte :)
Magnetik
5

para facilitar a execução, criei / usr / local / bin / compositer com o conteúdo:

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

não esqueça sudo chmod +x /usr/local/bin/composer.phar

bazilio91
fonte
3

Abaixo estão as etapas a serem seguidas para instalar o compositor globalmente: 1. Antes de instalar o Composer, verifique se o servidor possui todas as dependências instaladas.

Primeiro, atualize o cache do gerenciador de pacotes executando:

$ sudo apt-get update

2. Agora, vamos instalar as dependências. Vamos precisar

  • curl => para baixar o Composer
  • php5-cli => instalando e executando
  • git => usado pelo Composer para baixar dependências do projeto

Tudo pode ser instalado com o seguinte comando:

$ sudo apt-get install curl php5-cli git

3. Instalação do compositor com um único comando:

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

4. Isso fará o download e instalará o Composer como um comando de todo o sistema chamado compositor, em / usr / local / bin. A saída deve ficar assim:

Resultado:

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

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

Use-o: php / usr / local / bin / compositer

5. Para testar sua instalação, execute:

$ composer -V

Resultado:

Composer version 1.1.3 2016-06-26 15:42:08
  1. Instalação bem sucedida
Ravistm
fonte
0

Eu criei um script bash simples que instala automaticamente o compositor para o usuário atual / todos os usuários. Você pode usar um dos seguintes comandos no seu terminal para usar o script bash.

Usuário atual

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

Todos os usuários

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

Confira o Gist

Hasan Bayat
fonte
-1

Isso pode funcionar para você. Observe que sudoé usado duas vezes aqui.

sudo curl -sS https://getcomposer.org/installer | sudo php
do_do_do
fonte
11
Oi! Bem-vindo ao Ask Ubuntu. Como está, não está claro por que os comandos podem resolver o problema do OP. Você pode editar sua pergunta e elaborar sua resposta?
grooveplex