Назад | Перейти на главную страницу

Невозможно выполнить установку PECL

Я пытался выполнить несколько установок PECL, но все они возвращают ошибку одного и того же типа. Что-то связанное с часовыми поясами? Я использую RedHat x86_64 es5.

Попытка установить geoip-1.0.7:

root@server [~]# pecl install geoip-1.0.7
downloading geoip-1.0.7.tgz ...
Starting to download geoip-1.0.7.tgz (9,416 bytes)
.....done: 9,416 bytes

Warning: strtotime(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Chicago' for 'CST/-6.0/no DST' instead in PEAR/Validate.php on line 489

Warning: strtotime(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Chicago' for 'CST/-6.0/no DST' instead in /usr/local/lib/php/PEAR/Validate.php on line 489
3 source files, building
running: phpize
Configuring for:
PHP Api Version:         20090626
Zend Module Api No:      20090626
Zend Extension Api No:   220090626
building in /var/tmp/pear-build-root/geoip-1.0.7
running: /root/tmp/pear/geoip/configure
checking for egrep... grep -E
checking for a sed that does not truncate output... /bin/sed
checking for cc... cc
checking for C compiler default output file name... a.out
checking whether the C compiler works... configure: error: cannot run C compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details.
ERROR: `/root/tmp/pear/geoip/configure' failed

Что происходит? Любой, кто может помочь, пожалуйста ...

по моему опыту, "pecl install packagename" работает редко.

я просто загружаю последний tarball pecl, распаковываю, phpize (убедитесь, что php находится на вашем пути после компиляции / установки), ./configure, make, make install, service php-fpm restart

так, например, с пакетом geo-ip pecl попробуйте

wget http://pecl.php.net/get/geoip-1.0.8.tgz
компакт-диск geoip-1.0.8
phpize
./configure
делать
сделать установку
echo "extension = geoip.so" >> /path/to/php.ini
sudo service php-fpm | перезапуск apache

РЕДАКТИРОВАТЬ:

если вам не хватает пакета разработчика, вы получите сообщение об ошибке компиляции, и тогда вы

yum установить missingpkg-dev

РЕДАКТИРОВАТЬ:

конкретная причина того, что ваш пакет не устанавливается, заключается в том, что он создан для другой системы. в общем, если вы компилируете из исходного кода, вы будете счастливее, потому что знаете, что происходит.

Часовой пояс предупреждения (который вы должны исправить, установив часовой пояс в вашем php.ini) полностью отделены от фактической проблемы, которая является строкой «ошибка: не удается запустить скомпилированные программы C». Скорее всего, у вас нет gcc и / или make установлен из вашего менеджера пакетов. yum groupinstall "Development Tools" или yum install gcc make может сделать свое дело.

Пытаться:

mount -o remount,exec,suid /tmp
mount -o remount,exec,suid /var/tmp