composer経由でlaravelインストーラーをインストールできません


119

Ubuntu PCにコンポーザーを使用してlaravelインストーラーをインストールしようとしていますが、インストール中にこのエラーが発生します。`要件をインストール可能なパッケージのセットに解決できませんでした。

  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"

回答:


285

それはzip拡張が必要であると言います

laravel / installer v1.4.0にはext-zipが必要です...

以下を使用してインストールします(デフォルトバージョンをインストールします):

sudo apt install php-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

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

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

1
完全に動作しますが、これはcomposerインストールに含まれるべきではありませんか?依存関係マネージャーです...依存関係がありません。インクルージョンを逃したのはおそらくキャノニカルだったのかもしれません。
タイラークリスチャン

2
@ TylerChristian、composer installはPHPの依存関係を管理し、php7.0-zipはシステムパッケージです。それは作曲家によって解決することはできません。理論的には、システムパッケージをインストールするフックを追加することも可能ですが、sudoアクセスが必要になるため、これは本当に悪い習慣です。
アレックス

4
requires ext-zipかなり役に立たないメッセージです。requires php-zip or phpX.X-zip少なくとも言うべきです。
ヘンリー

1
Mac osユーザーの場合は、代わりにHomebrewを使用してください。ルートとしてbrewコマンドを実行する必要はありません。例:brew install php7.0-zip
Ben

30

CATALINAを使用するMACユーザー向け

まず、自作をインストールします。次に言う

brew install php@7.3
brew link php@7.3

コンソールを再起動し、laravelインストーラーを実行します


質問では、MacではなくUbuntuについて質問します。
Martijn Pieters

14
はい、しかし、これは他の人に役立ちます。私はMacを使っていて、これをGoogle検索で見つけました。この答えはOPのトップの答えにはなりませんが、他の人にとっては間違いなく役に立ちます。
DavidG

回答にさらに説明を追加してください-このコマンドは指定された問題をどのように解決しますか?最初に他のプログラムをインストールせずに特定の拡張機能をインストールするだけで問題はありますか?
Nico Haase

21

centos 7では、次のように使用しました。

yum install php-pecl-zip

他のソリューションではうまくいかなかったからです。


この質問では、CentOSではなくUbuntuについて質問します。
Martijn Pieters

これがまさに私が探していたものです、ありがとう。yum install php-zipはCentOS 7では機能しません
GTS Joe


5

macOS Catalinaでこの問題が発生している場合は、次の手順をお勧めします:

  1. Homebrewをインストールします(まだ行っていない場合):brew.shに移動するか、次のコマンドを実行します。/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

  2. 走る brew install php@7.3

  3. $ PATH変数を更新して、新しくインストールされたバージョンのphpを含めます。

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. シェル設定スクリプトをリロードする$ source ~/.zshrcか、source ~/.bashrc

  2. 最後に、laravelをインストールします。 composer global require laravel/installer


1
手順4の前に、新しいターミナルウィンドウを開きます。それ以外の場合、新しい$ PATHは使用できません。
user1771561

質問では、MacではなくUbuntuについて質問します。
Martijn Pieters

4

のためにUbuntu 16.04、私はこのコマンドを使用しましたがPHP7.2、うまくいきました。

sudo apt-get install php7.2-zip

4

CentOS 7とPHP7.2:

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

この質問では、CentOSではなくUbuntuについて質問します。
Martijn Pieters



2

あなたのphpのバージョンを知る

php -v 

PHP 7.3.0

sudo apt-get install php7.3-zip

このエラーが発生しましたE:php7.3-zipパッケージが見つかりませんE:glob 'php7.3-zip'でパッケージが見つかりませんE:regex 'php7.3-zipでパッケージが見つかりませんでした'
mak


1

php 7.3とlaravel 5.7を含むubuntu 16.04 LTSバージョンでWSLを使用しています

sudo apt-get install php7.3-zip

私のために働く


1

zip拡張子がありません。以下のコマンドを実行するだけでこのエラーを回避できます。デフォルトでバージョンが取得されます

sudo apt-get install php-zip

特定のバージョンが必要な場合は、phpの特定のバージョンについて言及する必要があります。たとえばX、php-zipのバージョンをインストールする必要があるとすると、コマンドは次のようになります。

sudo apt-get install phpX-zip  

Xあなたの必要なバージョンに置き換えてください、私の場合、それは X = 7.3


1

macOsユーザーの場合は、代わりにHomebrewを使用できます。

# 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

回答にさらに説明を追加してください-このコマンドのリストはどのようにして所定の問題を解決しますか?
Nico Haase
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.