Tidak dapat menginstal pemasang laravel melalui komposer


120

Saya mencoba menginstal penginstal laravel dengan komposer di PC Ubuntu saya, tetapi saya mendapatkan kesalahan ini selama instalasi. `Persyaratan Anda tidak dapat diselesaikan menjadi sekumpulan paket yang dapat diinstal.

  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.
`

Kesalahan muncul maka saya menggunakan komentar ini:

composer global require "laravel/installer"

Jawaban:


285

Ia mengatakan bahwa itu membutuhkan ekstensi zip

laravel / installer v1.4.0 membutuhkan ext-zip ...

Instal menggunakan (untuk menginstal versi default):

sudo apt install php-zip

Atau, jika Anda menjalankan versi PHP tertentu:

# 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
Bekerja dengan sempurna tetapi bukankah ini seharusnya ada di instalasi komposer? Ini adalah manajer ketergantungan ... kehilangan ketergantungan. Mungkin Cannonical yang melewatkan inklusi.
Tyler Christian

2
@TylerChristian, composer install mengelola dependensi PHP, php7.0-zip adalah paket sistem. Itu tidak bisa diselesaikan oleh komposer. Secara teoritis, dimungkinkan untuk menambahkan hook yang menginstal paket sistem juga, tetapi itu akan membutuhkan akses sudo, yang merupakan praktik yang BENAR-BENAR buruk.
Alex

4
requires ext-zipadalah pesan yang sangat tidak membantu. requires php-zip or phpX.X-zipSetidaknya harus mengatakan .
Henry

1
untuk pengguna mac os silakan gunakan Homebrew sebagai gantinya. Anda tidak perlu menjalankan perintah brew sebagai root. contoh: brew install php7.0-zip
Hosny Ben

31

UNTUK PENGGUNA MAC dengan CATALINA

Pertama, instal homebrew. Lalu berkata

brew install php@7.3
brew link php@7.3

restart konsol dan jalankan penginstal laravel


Pertanyaannya menanyakan tentang Ubuntu, bukan Mac.
Martijn Pieters

17
Ya, tapi ini membantu orang lain. Saya menggunakan mac dan menemukan ini dengan pencarian google. Jawaban ini bukan jawaban teratas untuk OP, tapi pasti membantu orang lain.
DavidG

Harap tambahkan beberapa penjelasan lebih lanjut ke jawaban Anda - bagaimana perintah ini menyelesaikan masalah yang diberikan? Apakah ada masalah dalam menginstal ekstensi yang diberikan tanpa menginstal program lain terlebih dahulu?
Nico Haase

21

Di centos 7 saya telah menggunakan:

yum install php-pecl-zip

karena solusi lain tidak berhasil untuk saya.


Pertanyaannya menanyakan tentang Ubuntu, bukan CentOS.
Martijn Pieters

Inilah yang saya cari, terima kasih. yum install php-zip tidak berfungsi di CentOS 7.
GTS Joe


6

Jika Anda menghadapi masalah ini dengan macOS Catalina , saya merekomendasikan langkah-langkah ini:

  1. Instal Homebrew (jika Anda belum melakukannya): buka brew.sh atau cukup jalankan perintah ini:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

  2. Lari brew install php@7.3

  3. Perbarui variabel $ PATH Anda untuk menyertakan versi php yang baru diinstal:

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. Muat ulang skrip preferensi shell Anda $ source ~/.zshrcatausource ~/.bashrc

  2. Terakhir, instal laravel: composer global require laravel/installer


1
Sebelum langkah 4, buka jendela terminal baru, jika tidak, $ PATH baru tidak akan tersedia.
pengguna1771561

Pertanyaannya menanyakan tentang Ubuntu, bukan Mac.
Martijn Pieters

4

Karena Ubuntu 16.04, saya telah menggunakan perintah ini untuk PHP7.2dan itu berhasil untuk saya.

sudo apt-get install php7.2-zip

4

Centos 7 dengan PHP7.2:

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

Pertanyaannya menanyakan tentang Ubuntu, bukan 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
Harap tambahkan beberapa komentar untuk menjelaskan bagaimana kode Anda menjawab pertanyaan untuk meningkatkan jawaban ini.
Eric Hauenstein

2

Untuk PHP 7.2 di Ubuntu 18.04 LTS

sudo apt-get install php7.2-zip

Bekerja seperti pesona


2

untuk mengetahui versi php Anda

php -v 

untuk php 7.3.0

sudo apt-get install php7.3-zip

Saya mendapatkan kesalahan ini E: Tidak dapat menemukan paket php7.3-zip E: Tidak dapat menemukan paket apa pun dengan glob 'php7.3-zip' E: Tidak dapat menemukan paket apa pun dengan regex 'php7.3-zip '
mak


1

Saya menggunakan WSL dengan ubuntu 16.04 LTS versi dengan php 7.3 dan laravel 5.7

sudo apt-get install php7.3-zip

Bekerja untuk saya


1

ekstensi zip tidak ada , Anda dapat menghindari kesalahan ini dengan menjalankan perintah di bawah ini, Ini akan mengambil versi secara default

sudo apt-get install php-zip

Jika Anda memerlukan versi tertentu, Anda perlu menyebutkan versi tertentu dari php Anda, Misalkan saya perlu menginstal Xversi php-zip maka perintahnya adalah.

sudo apt-get install phpX-zip  

Ganti Xdengan versi yang Anda butuhkan, Dalam kasus saya, itu X = 7.3


1

Untuk pengguna macOs, Anda dapat menggunakan Homebrew sebagai gantinya:

# 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

Harap tambahkan beberapa penjelasan lebih lanjut ke jawaban Anda - bagaimana daftar perintah ini menyelesaikan masalah yang diberikan?
Nico Haase
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.