Не удается установить установщик laravel через композитор

45

Я пытаюсь установить установщик laravel с композитором на моем компьютере Ubuntu, но я получаю эту ошибку во время установки. `Ваши требования не могут быть разрешены к устанавливаемому набору пакетов.

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

Появится ошибка, и я использую этот комментарий:

composer global require "laravel/installer"
Теги:
laravel-5

9 ответов

122
Лучший ответ

Это говорит о том, что требуется расширение zip

laravel/installer v1.4.0 требует ext-zip........

Установите версию, соответствующую установленной версии php:

# 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
  • 0
    Работает отлично, но разве это не должно быть при установке композитора? Это менеджер зависимостей ... отсутствует зависимость. Может быть, это было Cannonical, который пропустил включение.
  • 1
    @TylerChristian, composer install управляет зависимостями PHP, php7.0-zip - системный пакет. Это не может быть решено композитором. Теоретически, можно добавить хук, который также устанавливает системный пакет, но для этого потребуется доступ sudo, что ДЕЙСТВИТЕЛЬНО плохая практика.
Показать ещё 4 комментария
13

Для PHP7.1 установите это

sudo apt-get install php7.1-zip
10

На Centos 7 я использовал:

yum install php-pecl-zip

потому что любое другое решение не сработало для меня.

  • 0
    Я пробовал много других пакетов, но ни один из них не работал, пока я не использовал ваш. Большое спасибо!
  • 0
    Рад слышать это. Пожалуйста!
3

Для Ubuntu 16.04 я использовал эту команду для PHP7.2 и она сработала для меня.

sudo apt-get install php7.2-zip
1

Для PHP 7.2 в Ubuntu 18.04 LTS

sudo apt-get install php7.2-zip

Работает как шарм

1

Centos 7 с PHP7.2:

sudo yum --enablerepo=remi-php72 install php-pecl-zip
  • 0
    Ура !!! Это сработало для меня!
0

Я использую WSL с Ubuntu 16.04 LTS версии с php 7.3 и laravel 5.7

sudo apt-get install php7.3-zip

Работа для меня

0

У меня более старый MacBook Pro (середина 2009 года) под управлением ОС 10.11.6. Единственное решение, которое работало для меня, было следующее:

sudo port install php73-zip

Включите вашу версию PHP без "."

Заваривать не получится. Apt-Get не будет работать. Несколько дополнительных заметок:

  • Во-первых, вам нужно скачать "Порты" на macports.org
  • Вы можете получить сообщение об ошибке "Xcode не установлен;" Я скачал весь Xcode 8.2.1 (более старая версия из-за моей старой версии 10.11) и STILL получил ту же ошибку. YMMV, но я пошел вперед, и он все еще работал, так что, возможно, пропустите установку 12 ГБ XCode.
0

Для Mac с Macports,

# port install php71-zip
Сообщество Overcoder
Наверх
Меню