2016-05-18 3 views
3

Я создал Elastic Beanstalk средыУстановка Xdebug на PHP 5.6 Amazon Linux AMI

ID_LIKE="rhel fedora" 
VERSION_ID="2016.03" 
PRETTY_NAME="Amazon Linux AMI 2016.03" 
ANSI_COLOR="0;33" 
CPE_NAME="cpe:/o:amazon:linux:2016.03:ga" 
HOME_URL="http://aws.amazon.com/amazon-linux-ami/" 

Я пытаюсь установить XDebug с помощью

sudo yum install php-pecl-xdebug 

Но я держу получить следующую ошибку

Loaded plugins: priorities, update-motd, upgrade-helper 
Resolving Dependencies 
--> Running transaction check 
---> Package php-pecl-xdebug.x86_64 0:2.2.3-1.5.amzn1 will be installed 
--> Processing Dependency: php(api) = 20090626-x86-64 for package: php-pecl-xdebug-2.2.3-1.5.amzn1.x86_64 
--> Processing Dependency: php(zend-abi) = 20090626-x86-64 for package: php-pecl-xdebug-2.2.3-1.5.amzn1.x86_64 
--> Running transaction check 
---> Package php-common.x86_64 0:5.3.29-1.8.amzn1 will be installed 
--> Processing Conflict: php56-common-5.6.21-1.124.amzn1.x86_64 conflicts php-common < 5.5.22-1.98 
--> Finished Dependency Resolution 
Error: php56-common conflicts with php-common-5.3.29-1.8.amzn1.x86_64 
You could try using --skip-broken to work around the problem 
You could try running: rpm -Va --nofiles --nodigest 

Что я должен использовать вместо этого? И для справки, как я могу определить, какие пакеты доступны? Спасибо большое.

ответ

8

php-pecl-xdebug зависит от версии PHP по умолчанию для Amazon Linux, 2.3. Поскольку у вас установлен PHP 5.6, вы получаете конфликт.

К сожалению, это выглядит как Amazon Linux имеет только пакеты для Xdebug до PHP 5.5:

[[email protected] ~]$ sudo yum search xdebug 
Loaded plugins: priorities, update-motd, upgrade-helper 
============================= N/S matched: xdebug ============================== 
php-pecl-xdebug.x86_64 : PECL package for debugging PHP scripts 
php54-pecl-xdebug.x86_64 : PECL package for debugging PHP scripts 
php55-pecl-xdebug.x86_64 : PECL package for debugging PHP scripts 

    Name and summary matches only, use "search all" for everything. 

Поскольку есть пакет PECL, вы можете установить его через что:

[[email protected] ~]$ sudo yum install php-pear php56-devel gcc 
[[email protected] ~]$ sudo mount -o remount,exec /var/tmp/ 
[[email protected] ~]$ sudo pecl install xdebug 
[[email protected] ~]$ sudo mount -o remount,noexec /var/tmp/ 
+1

Отлично, Огромное спасибо! Мне даже не нужны переоборудование. – qu1j0t3