LINUX.ORG.RU

phpize не устаналивается

 


0

1

Centos 6 x64. Делаю по мануалу: http://blog.gohost.kz/blog/56.html В итоге не существует команды phpize Как я понял она появится после выполнения: yum -y install php-devel, но до конца команда видимо не выполняется:

...
---> Package php-pdo.x86_64 0:5.2.17-24.el5 will be an update
--> Finished Dependency Resolution
Error: Package: php-common-5.2.17-24.el5.x86_64 (CentALT)
           Requires: libcurl.so.3()(64bit)
Error: Package: php-odbc-5.2.17-24.el5.x86_64 (CentALT)
           Requires: libodbc.so.1()(64bit)
Error: Package: php-mysql-5.2.17-24.el5.x86_64 (CentALT)
           Requires: libmysqlclient.so.15(libmysqlclient_15)(64bit)
Error: Package: php-mysql-5.2.17-24.el5.x86_64 (CentALT)
           Requires: libmysqlclient.so.15()(64bit)
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

Какой смысл вбивать в Centos 6 пакеты для 5-ой версии из репозитария CentALT?

Разбирайтесь со своим списком репозитариев.

mky ★★★★★ ()
Ответ на: комментарий от mky

Проверил, после yum -y install php-devel библиотека libssh2 скачивается. Но потом, после команды pecl install -f ssh2 просто ошибка, о не существовании pecl. Попытася установить yum install pecl, выдало что No package pecl available.Error: Nothing to do

Подскажите как установить этот pecl долбаный

ivan2012 ()
Ответ на: комментарий от riki
[root@usrcm ~]# yum provides */pecl
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
 * atomic: mir01.syntis.net
 * base: mirrors.coreix.net
 * epel: ftp.tlk-l.net
 * extras: mirrors.coreix.net
 * rpmforge: mirror1.hs-esslingen.de
 * updates: mirrors.coreix.net
updates/filelists_db                                     | 3.6 MB     00:01
1:php-pear-1.9.1-1.el5.noarch : PHP Extension and Application Repository
                              : framework
Repo        : CentALT
Matched from:
Filename    : /usr/bin/pecl



1:php-pear-1.9.4-4.el6.noarch : PHP Extension and Application Repository
                              : framework
Repo        : base
Matched from:
Filename    : /usr/bin/pecl

Потом жму и всеравно ошибка

[root@usrcm ~]# pecl install -f ssh2
-bash: pecl: command not found

ivan2012 ()
Ответ на: комментарий от xtraeft

Установил php-pear. Дальше жму:

# pecl install -f ssh2
WARNING: failed to download pecl.php.net/ssh2 within preferred state "stable", will instead download version 0.12, stability "beta"
WARNING: channel "pecl.php.net" has updated its protocols, use "pecl channel-update pecl.php.net" to update
downloading ssh2-0.12.tgz ...
Starting to download ssh2-0.12.tgz (26,223 bytes)
.........done: 26,223 bytes
6 source files, building
running: phpize
sh: phpize: command not found
ERROR: `phpize' failed

ivan2012 ()
Ответ на: комментарий от ivan2012

Подробнее: ″php-common-5.2.17-24.el5.x86_64″, здесь .el5. означает RHEL 5, то есть 5-ая версия дистрибутива, а у вас 6-ая. Это может быть черевато боком — смешивать пакеты от разных веток.

Это происходит, потому что у вас подключен CentALT. Зачем у вас подключён репозитарий CentALT? Он что, сам прописался в /etc/yum.repos.d/ ?

Так, я бы вам советовал подключить репозитарий epel и установить от туда (″yum install php-pecl-ssh2″). Но сначала надо бы разобраться с самим php, чтобы он весь был из основного репозитария CentOS, а не из CentALT. В общем, отключите CentALT, переустановите php, тогда установится php-devel и будет phpize.

mky ★★★★★ ()
Ответ на: комментарий от mky

Тоже самое сказали, на другом форуме, о том, что надо сносить php. Но нам необходима 5.2 версия, т.к. в более поздних уже не поддерживается MSSQl (без PDO). Ставили нам хостера по просьбе. Без переустановки php никак?

ivan2012 ()
Ответ на: комментарий от ivan2012

Хостер, похоже, «вбил» php-5.2 для RHEL 5, а не установил. Пакет php-5.2 для RHEL 6 есть в репозитарии atomicorp.com. Там есть и -devel и -pecr. Вот пара ссылок про это: http://dedicatesupport.com/content/centos-6-i-php-5217 http://nanotik.blogspot.ru/2011/10/php-5217-centos-6.html\

Сначала отключаете у себя репозитарий CentALT, для этого в файле в каталоге yum.repos.d делаете ″enabled=0″. Потом сносите php, подключаете atomicorp и устанавливаете php-5.2.17. Для него нет пакета ″php-pecl-ssh2″, поэтому его через ″pecl install″.

Ещё всегда есть вариант попробовать собрать пакет с php из исходников. Для этого берёте php-5.2.x.src.rpm от CentOS 5 и собираете его через ″rpmbuild″. При этом долго и нудно изучаете гугл о том, как собирать rpm'ки, устанавливая нужные пакеты (компилятор и -devel).

p.s. Поосторожнее с ″yum -y″, лучше всегда читать список устанавливаемых/удаляемых пакетов, а то можно всю систему сделать не рабочей.

mky ★★★★★ ()
Ответ на: комментарий от mky

CentALT отключил. Взгляните, а разве сейчас не atomic репозиторий?

# yum install php-pecl-ssh2
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
 * atomic: mir01.syntis.net
 * base: mirrors.coreix.net
 * epel: ftp.tlk-l.net
 * extras: mirrors.coreix.net
 * rpmforge: mirror1.hs-esslingen.de
 * updates: mirrors.coreix.net
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package php-pecl-ssh2.x86_64 0:0.11.0-7.el6 will be installed
--> Processing Dependency: php(zend-abi) = 20090626 for package: php-pecl-ssh2-0.11.0-7.el6.x86_64
--> Processing Dependency: php(api) = 20090626 for package: php-pecl-ssh2-0.11.0-7.el6.x86_64
--> Finished Dependency Resolution
Error: Package: php-pecl-ssh2-0.11.0-7.el6.x86_64 (epel)
           Requires: php(api) = 20090626
           Installed: php-common-5.2.17-1.el6.art.x86_64 (@atomic)
               php(api) = 20041225
Error: Package: php-pecl-ssh2-0.11.0-7.el6.x86_64 (epel)
           Requires: php(zend-abi) = 20090626
           Installed: php-common-5.2.17-1.el6.art.x86_64 (@atomic)
               php(zend-abi) = 20060613
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

ivan2012 ()
Ответ на: комментарий от ivan2012

Я же вроде прямо написал, что для php-5.2.17 из atomic репозитария нет пакета php-pecl-ssh2 и для установки ssh2 нужно пробовать:

pecl install -f ssh2

mky ★★★★★ ()
Ответ на: комментарий от mky

Попробовал

pecl install -f ssh2
WARNING: failed to download pecl.php.net/ssh2 within preferred state "stable", w                              ill instead download version 0.12, stability "beta"
WARNING: channel "pecl.php.net" has updated its protocols, use "pecl channel-upd                              ate pecl.php.net" to update
downloading ssh2-0.12.tgz ...
Starting to download ssh2-0.12.tgz (26,223 bytes)
.........done: 26,223 bytes
6 source files, building
running: phpize
sh: phpize: command not found
ERROR: `phpize' failed

ivan2012 ()
Ответ на: комментарий от ivan2012

Пакет php-devel-5.2.17 установлен (через ″yum install″) ?

mky ★★★★★ ()
Ответ на: комментарий от mky

Да скорей всего, ставили хостеры. На другом форуме советуют: удалить значит epel репозиторий, , удалить php-pecl, и потом поставить из atomic репозитория все.

ivan2012 ()
Ответ на: комментарий от ivan2012

Хостеры вам ставили из репозитария CentALT, а вам нужно из репозитария atomic. Когда вы удаляли php, то и php-devel тоже должен был удалится. Ставьте его из atomic.

Пакета php-pecl не существует. Пакет php-pecl-ssh2 у вас в вышеприведённом коменте не установился. Если только потом вы не «вбили» его через опцию ″--skip-broken″.

Список установленных php пакетов можно постомтреть командой:

rpm -q -a | grep php

У вас должно был php, php-common и php-devel одной версии!

mky ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.