Laravel Installer kann nicht über Composer installiert werden


119

Ich versuche, das Laravel-Installationsprogramm mit dem Composer auf meinem Ubuntu-PC zu installieren, erhalte jedoch diesen Fehler während der Installation. `Ihre Anforderungen konnten nicht in einen installierbaren Satz von Paketen aufgelöst werden.

  Problem 1
    - laravel/installer v1.4.1 requires ext-zip * -> the requested PHP extension zip is missing from your system.
    - laravel/installer v1.4.0 requires ext-zip * -> the requested PHP extension zip is missing from your system.
    - Installation request for laravel/installer ^1.4 -> satisfiable by laravel/installer[v1.4.0, v1.4.1].

  To enable extensions, verify that they are enabled in those .ini files:
    - /etc/php/7.0/cli/php.ini
    - /etc/php/7.0/cli/conf.d/10-opcache.ini
    - /etc/php/7.0/cli/conf.d/10-pdo.ini
    - /etc/php/7.0/cli/conf.d/20-calendar.ini
    - /etc/php/7.0/cli/conf.d/20-ctype.ini
    - /etc/php/7.0/cli/conf.d/20-exif.ini
    - /etc/php/7.0/cli/conf.d/20-fileinfo.ini
    - /etc/php/7.0/cli/conf.d/20-ftp.ini
    - /etc/php/7.0/cli/conf.d/20-gettext.ini
    - /etc/php/7.0/cli/conf.d/20-iconv.ini
    - /etc/php/7.0/cli/conf.d/20-json.ini
    - /etc/php/7.0/cli/conf.d/20-phar.ini
    - /etc/php/7.0/cli/conf.d/20-posix.ini
    - /etc/php/7.0/cli/conf.d/20-readline.ini
    - /etc/php/7.0/cli/conf.d/20-shmop.ini
    - /etc/php/7.0/cli/conf.d/20-sockets.ini
    - /etc/php/7.0/cli/conf.d/20-sysvmsg.ini
    - /etc/php/7.0/cli/conf.d/20-sysvsem.ini
    - /etc/php/7.0/cli/conf.d/20-sysvshm.ini
    - /etc/php/7.0/cli/conf.d/20-tokenizer.ini
  You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.
`

Der Fehler erscheint dann benutze ich diesen Kommentar:

composer global require "laravel/installer"

Antworten:


285

Es heißt, dass eine Reißverschlussverlängerung erforderlich ist

laravel / installer v1.4.0 benötigt ext-zip ...

Installieren mit (um die Standardversion zu installieren):

sudo apt install php-zip

Oder wenn Sie eine bestimmte Version von PHP ausführen:

# For php v7.0
sudo apt-get install php7.0-zip

# For php v7.1
sudo apt-get install php7.1-zip

# For php v7.2
sudo apt-get install php7.2-zip

# For php v7.3
sudo apt-get install php7.3-zip

# For php v7.4
sudo apt-get install php7.4-zip

1
Funktioniert einwandfrei, sollte dies aber nicht in der Composer-Installation sein? Es ist ein Abhängigkeitsmanager ... dem eine Abhängigkeit fehlt. Vielleicht war es Cannonical, das die Aufnahme verpasst hat.
— Tyler Christian

2
@ TylerChristian, Composer Install verwaltet PHP-Abhängigkeiten, php7.0-zip ist ein Systempaket. Es kann nicht vom Komponisten gelöst werden. Theoretisch ist es möglich, einen Hook hinzuzufügen, der auch das Systempaket installiert, aber es erfordert einen Sudo-Zugriff, was WIRKLICH eine schlechte Praxis ist.
— Alex

4
requires ext-zipist eine ziemlich wenig hilfreiche Nachricht. Sollte requires php-zip or phpX.X-zipzumindest sagen .
— Henry

1
Für Mac OS Benutzer verwenden Sie bitte Homebrew. Sie müssen keine Brew-Befehle als root ausführen. Beispiel: Brew installieren php7.0-zip
— Hosny Ben

29

FÜR MAC-BENUTZER mit CATALINA

Installieren Sie zuerst Homebrew. Dann sage

brew install php@7.3
brew link php@7.3

Starten Sie die Konsole neu und führen Sie das Laravel-Installationsprogramm aus


Die Frage bezieht sich auf Ubuntu, nicht auf Mac.
— Martijn Pieters

13
Ja, aber das ist hilfreich für andere. Ich bin auf dem Mac und habe dies mit der Google-Suche gefunden. Diese Antwort wird nicht die beste Antwort für OP sein, aber sie ist definitiv hilfreich für andere.
— DavidG

Bitte fügen Sie Ihrer Antwort eine weitere Erklärung hinzu - wie löst dieser Befehl das gegebene Problem? Gibt es ein Problem bei der einfachen Installation der angegebenen Erweiterung, ohne zuerst andere Programme zu installieren?
— Nico Haase

21

Auf Centos 7 habe ich verwendet:

yum install php-pecl-zip

weil jede andere Lösung bei mir nicht funktioniert hat.


Die Frage bezieht sich auf Ubuntu, nicht auf CentOS.
— Martijn Pieters

Genau das habe ich gesucht, danke. yum install php-zip funktioniert nicht unter CentOS 7.
— GTS Joe


5

Wenn Sie dieses Problem mit macOS Catalina haben , empfehle ich die folgenden Schritte:

  1. Installieren Sie Homebrew (falls Sie dies noch nicht getan haben): Gehen Sie zu Brew.sh oder führen Sie einfach diesen Befehl aus:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

  2. Lauf brew install php@7.3

  3. Aktualisieren Sie Ihre $ PATH-Variable, um die neu installierte Version von PHP einzuschließen:

echo 'export PATH="/usr/local/opt/php@7.3/bin:$PATH"' >> ~/.zshrc

echo 'export PATH="/usr/local/opt/php@7.3/sbin:$PATH"' >> ~/.zshrc

  1. Laden Sie Ihr Shell-Einstellungsskript $ source ~/.zshrcoder neusource ~/.bashrc

  2. Zum Schluss installieren Sie Laravel: composer global require laravel/installer


1
Öffnen Sie vor Schritt 4 ein neues Terminalfenster, da sonst der neue $ PATH nicht verfügbar ist.
— user1771561

Die Frage bezieht sich auf Ubuntu, nicht auf Mac.
— Martijn Pieters

4

Für Ubuntu 16.04habe ich diesen Befehl für verwendet PHP7.2und es funktionierte für mich.

sudo apt-get install php7.2-zip

4

Centos 7 mit PHP7.2:

sudo yum --enablerepo=remi-php72 install php-pecl-zip

Die Frage bezieht sich auf Ubuntu, nicht auf CentOS.
— Martijn Pieters

3
V=`php -v | sed -e '/^PHP/!d' -e 's/.* \([0-9]\+\.[0-9]\+\).*$/\1/'` \
sudo apt-get install php$V-zip

1
Bitte fügen Sie einige Kommentare hinzu, um zu erklären, wie Ihr Code die Frage beantwortet, um diese Antwort zu verbessern.
— Eric Hauenstein

2

Für PHP 7.2 in Ubuntu 18.04 LTS

sudo apt-get install php7.2-zip

Klappt wunderbar


2

um deine PHP-Version zu kennen

php -v 

für PHP 7.3.0

sudo apt-get install php7.3-zip

Ich erhalte die Fehlermeldung E: Paket php7.3-zip konnte nicht gefunden werden E: Paket von glob 'php7.3-zip' konnte nicht gefunden werden E: Paket von regex 'php7.3-zip konnte nicht gefunden werden '
— Mak


1

Ich benutze WSL mit Ubuntu 16.04 LTS Version mit PHP 7.3 und Laravel 5.7

sudo apt-get install php7.3-zip

Arbeite für mich


1

Die Zip-Erweiterung fehlt . Sie können diesen Fehler vermeiden, indem Sie einfach den folgenden Befehl ausführen. Die Version wird standardmäßig verwendet

sudo apt-get install php-zip

Wenn Sie eine bestimmte Version benötigen, müssen Sie eine bestimmte Version Ihres PHP erwähnen. Angenommen, ich muss die XVersion von PHP-Zip installieren, dann lautet der Befehl.

sudo apt-get install phpX-zip  

Ersetzen Sie Xdurch Ihre gewünschte Version. In meinem Fall ist es X = 7.3


1

Für MacO-Benutzer können Sie stattdessen Homebrew verwenden:

# For php v7.0
brew install php@7.0

# For php v7.1
brew install php@7.1

# For php v7.2
brew install php@7.2

# For php v7.3
brew install php@7.3

# For php v7.4
brew install php@7.4

Bitte fügen Sie Ihrer Antwort eine weitere Erklärung hinzu - wie löst diese Befehlsliste das gegebene Problem?
— Nico Haase
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.