要启用扩展,请验证它们是否已在这些.ini文件中启用 - Vagrant / Ubuntu / Magento 2.0.2

时间:2016-03-05 14:37:08

标签: php ubuntu composer-php magento2

通过composer安装Magento 2.0.2时出现此错误:

Problem 1
 - Installation request for magento/product-enterprise-edition 2.0.2 -> satisfiable by magento/product-enterprise-edition[2.0.2].
 - magento/product-enterprise-edition 2.0.2 requires ext-gd * -> the requested PHP extension gd is missing from your system.

To enable extensions, verify that they are enabled in those .ini files:

- /etc/php5/cli/php.ini
- /etc/php5/cli/conf.d/05-opcache.ini
- /etc/php5/cli/conf.d/10-pdo.ini
- /etc/php5/cli/conf.d/20-curl.ini
- /etc/php5/cli/conf.d/20-imap.ini
- /etc/php5/cli/conf.d/20-json.ini
- /etc/php5/cli/conf.d/20-mcrypt.ini
- /etc/php5/cli/conf.d/20-pdo_pgsql.ini
- /etc/php5/cli/conf.d/20-pgsql.ini
- /etc/php5/cli/conf.d/20-pspell.ini
- /etc/php5/cli/conf.d/20-readline.ini

You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.

我已经安装了php5-cli,php5-curl。

19 个答案:

答案 0 :(得分:30)

先安装_mycal = json_calendar(json_data),然后sudo apt-get install php5-gd,最后一个安装sudo apt-get install php5-intl。 在那之后,它应该安装它。

答案 1 :(得分:17)

这解决了我的问题

sudo apt-get install php7.1-xml

sudo apt-get install php7.2-xml

答案 2 :(得分:13)

多次尝试过,上面的答案并没有解决我的问题,但是这个命令帮助了我:

sudo apt-get install php-mbstring

答案 3 :(得分:6)

这个命令可以解决问题

apply

答案 4 :(得分:6)

@Verse的回答很好。但是我想补充一点。 而不是安装php5-mbstringphp5-gdphp5-intlphp5-xsl。这个答案基于@Regolith答案:Package has no installation candidate

根据 php-version 安装。

首先通过sudo php -v检查你有哪个php版本。我有php7所以结果是:

PHP 7.0.28-0ubuntu0.16.04.1 (cli) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
   with Zend OPcache v7.0.28-0ubuntu0.16.04.1, Copyright (c) 1999-2017, by Zend Technologies

因为我有php7,我会做以下列出php包:
sudo apt-cache search php7-*

此返回

libapache2-mod-php7.0 - server-side, HTML-embedded scripting language (Apache 2 module)
php-all-dev - package depending on all supported PHP development packages
php7.0 - server-side, HTML-embedded scripting language (metapackage)
php7.0-cgi - server-side, HTML-embedded scripting language (CGI binary)
php7.0-cli - command-line interpreter for the PHP scripting language
php7.0-common - documentation, examples and common module for PHP
php7.0-curl - CURL module for PHP
php7.0-dev - Files for PHP7.0 module development
php7.0-gd - GD module for PHP
php7.0-gmp - GMP module for PHP
php7.0-json - JSON module for PHP
php7.0-ldap - LDAP module for PHP
php7.0-mysql - MySQL module for PHP
php7.0-odbc - ODBC module for PHP
php7.0-opcache - Zend OpCache module for PHP
php7.0-pgsql - PostgreSQL module for PHP
php7.0-pspell - pspell module for PHP
php7.0-readline - readline module for PHP
php7.0-recode - recode module for PHP
php7.0-snmp - SNMP module for PHP
php7.0-sqlite3 - SQLite3 module for PHP
php7.0-tidy - tidy module for PHP
php7.0-xml - DOM, SimpleXML, WDDX, XML, and XSL module for PHP
php7.0-xmlrpc - XMLRPC-EPI module for PHP
libphp7.0-embed - HTML-embedded scripting language (Embedded SAPI library)
php7.0-bcmath - Bcmath module for PHP
php7.0-bz2 - bzip2 module for PHP
php7.0-enchant - Enchant module for PHP
php7.0-fpm - server-side, HTML-embedded scripting language (FPM-CGI binary)
php7.0-imap - IMAP module for PHP
php7.0-interbase - Interbase module for PHP
php7.0-intl - Internationalisation module for PHP
php7.0-mbstring - MBSTRING module for PHP
php7.0-mcrypt - libmcrypt module for PHP
php7.0-phpdbg - server-side, HTML-embedded scripting language (PHPDBG binary)
php7.0-soap - SOAP module for PHP
php7.0-sybase - Sybase module for PHP
php7.0-xsl - XSL module for PHP (dummy)
php7.0-zip - Zip module for PHP
php7.0-dba - DBA module for PHP

现在要安装软件包,使用所需的软件包运行以下命令

sudo apt-get install -y php7.0-gd, php7.0-intl, php7.0-xsl, php7.0-mbstring

注意php7.0-mbstringphp7.0-gd php7.0-intl php7.0-xsl是上面列出的包。

更新的: 不要忘记重新启动apache/<your_server>

sudo service apache2 reload

答案 5 :(得分:5)

首次安装

sudo apt-get install php5-gd

然后

sudo apt-get install php5-intl

,最后一个是

sudo apt-get install php5-xsl

之后,它正在安装它。

答案 6 :(得分:4)

当我去创建一个laravel项目时,我遇到了这个问题。

谷歌搜索后,我得到了这个解决方案。

我遵循了以下步骤:

步骤1:sudo apt-get install -y php7.2-gd

第2步:sudo apt-get install php7.2-intl

第3步:sudo apt-get install php7.2-xsl

步骤4:sudo apt-get install php7.2-mbstring

答案 7 :(得分:4)

当我尝试在全新的WSL安装上安装Laravel时,这就是我的解决方法:

sudo apt-get install php7.2-gd

sudo apt-get install php7.2-intl

sudo apt-get install php7.2-xsl

sudo apt-get install php7.2-zip

答案 8 :(得分:2)

在Ubuntu 16.04上,php7现在是默认设置,所以如果您按照最佳答案进行操作并仍然遇到此问题,请检查您的php版本。

php --version

如果您的默认php版本是php7,但是您使用php5软件包后面的答案,您可以使用以下命令将php的默认版本设置为php5.6:

sudo update-alternatives --set php $(which php5.6)

答案 9 :(得分:2)

扩展名的确切名称取决于您从中获取PHP的存储库,但看起来here。例如在CentOS上:

yum install -y php56w php56w-opcache php56w-xml php56w-mcrypt php56w-gd php56w-devel php56w-mysql php56w-intl php56w-mbstring php56w-bcmath

答案 10 :(得分:2)

ubuntu用户尝试

apt-get install php7.2 libapache2-mod-php7.2 php7.2-common php7.2-gd php7.2-mysql php7.2-curl php7.2-intl php7.2-xsl php7.2-mbstring php7.2-zip php7.2-bcmath php7.2-soap php-xdebug php-imagick

这适用于php 7.2,但您可以将此7.2更改为5.2并运行此命令 是工作。

答案 11 :(得分:0)

类似情况:

  • /etc/php/7.3/cli/php.ini
  • /etc/php/7.3/cli/conf.d/10-mysqlnd.ini
  • /etc/php/7.3/cli/conf.d/10-opcache.ini
  • /etc/php/7.3/cli/conf.d/10-pdo.ini
  • /etc/php/7.3/cli/conf.d/20-calendar.ini
  • /etc/php/7.3/cli/conf.d/20-ctype.ini
  • /etc/php/7.3/cli/conf.d/20-exif.ini
  • /etc/php/7.3/cli/conf.d/20-fileinfo.ini
  • /etc/php/7.3/cli/conf.d/20-ftp.ini
  • /etc/php/7.3/cli/conf.d/20-gettext.ini
  • /etc/php/7.3/cli/conf.d/20-iconv.ini
  • /etc/php/7.3/cli/conf.d/20-json.ini
  • /etc/php/7.3/cli/conf.d/20-mbstring.ini
  • /etc/php/7.3/cli/conf.d/20-mysqli.ini
  • /etc/php/7.3/cli/conf.d/20-pdo_mysql.ini
  • /etc/php/7.3/cli/conf.d/20-phar.ini
  • /etc/php/7.3/cli/conf.d/20-posix.ini
  • /etc/php/7.3/cli/conf.d/20-readline.ini
  • /etc/php/7.3/cli/conf.d/20-shmop.ini
  • /etc/php/7.3/cli/conf.d/20-sockets.ini
  • /etc/php/7.3/cli/conf.d/20-sysvmsg.ini
  • /etc/php/7.3/cli/conf.d/20-sysvsem.ini
  • /etc/php/7.3/cli/conf.d/20-sysvshm.ini
  • /etc/php/7.3/cli/conf.d/20-tokenizer.ini

解决:

write()

答案 12 :(得分:0)

安装 PHP 扩展:

sudo apt-get install -y php-gd

sudo apt-get install -y php-intl

sudo apt-get install -y php-xsl

sudo apt-get install -y php-mbstring

答案 13 :(得分:0)

已更新。...针对ubuntu用户

sudo apt-get php install libapache2-mod-php php-common php-gd php-mysql php-curl php-intl php-xsl php-mbstring php-zip php-bcmath php-soap php-xdebug php-imagick

答案 14 :(得分:0)

  1. 在任何编辑器中打开xampp / php / php.ini文件
  2. 搜索“; extension = php_intl.dll”
  3. 删除起始分号(;)

    赞: ;extension=php_intl.dllextension=php_intl.dll

这对我有帮助。

答案 15 :(得分:0)

它可以帮助我安装合适的curl版本

sudo apt-get install php5-curl

答案 16 :(得分:0)

看到一些声称“把戏”的答案(包括已接受的答案)后,将在此发布答案。首先,我们需要先找出问题,然后再解决。

  

您的系统缺少所请求的PHP扩展gd。

正如上面一行明确指出的那样,我们需要安装扩展名php-gd。

因此,我们可以使用sudo apt install php<version>-gd,它应该可以解决此错误,除非系统需要更多扩展名,而这恰恰是所讨论系统中的确切情况。它需要几个扩展php-intl和php-xsl。 因此,让它成为mbstring或mcrypt,您应该安装系统缺少的所有扩展。您如何找到缺失的东西?只需阅读错误消息,它就在那里。

答案 17 :(得分:0)

我在下面用来解决问题

yum install -y php-intl php-xsl php-opcache php-xml php-mcrypt php-gd php-devel php-mysql php-mbstring php-bcmath

答案 18 :(得分:-1)

在服务器上运行正常

composer install --no-dev