Как установить и запустить phpize

215

Я хотел установить ffmpegкак расширение для моей установки PHP. Поэтому, прежде чем я смогу установить его, мне нужно phpizeэто. Я установил php5-devна sudo apt-get install php5-dev. Но теперь, когда я бегу, phpizeя получаю следующую ошибку:

phpize
Cannot find config.m4. 
Make sure that you run '/usr/bin/phpize' in the top level source directory of the module

Расположение моего php.ini /usr/local/zend/etc/php.ini

С другого онлайн ресурса я попробовал это

sudo apt-get install autoconf automake libtool m4

Но все они уже установлены.

Найти config.m4 не вернул ничего.

Любые указатели здесь, как я могу получить phpizeи, таким образом, ffmpegи работает?

Хришикеш Чоудхари
источник

Ответы:

468

Для последних версий Debian / Ubuntu (Debian 9+ или Ubuntu 16.04+) установите php-devпакет зависимостей, который автоматически установит правильную версию php{x}-devдля вашего дистрибутива:

sudo apt install php-dev

Старые версии Debian / Ubuntu:

Для PHP 5 он находится в пакете php5-dev.

sudo apt-get install php5-dev

Для PHP 7.x (из комментария rahilwazir):

sudo apt-get install php7.x-dev

RHEL / CentOS / ни

yum install php-devel # see comments
затемнение
источник
9
при использовании yum вместо apt-get соответствующий пакет называется php-devel
cheepychappy
5
yum установить php-devel на rhel / centos
andrej
4
Как это может быть решением? В вопросе, который он сказал, он уже установил php5-dev.
Даниэль В.
53
Для PHP7 вы можете использоватьphp7.0-dev
Рахиль Вазир
17
Для PHP7.1 используйтеphp7.1-dev
Nino Škopac
62

Для пользователей PHP7

7,1

sudo apt установить php7.1-dev

7,2

sudo apt установить php7.2-dev

7,3

sudo apt установить php7.3-dev

7,4

sudo apt установить php7.4-dev

Если вы не уверены в своей версии PHP, просто запустите команду php -v

M_R_K
источник
13
вам больше не нужно набирать apt-get больше. apt установить то же самое. apt-cache больше не нужно вводить, либо просто поиск apt
Кевин Ремисоски
php7.0-dev не найден в списке пакетов для меня. Странно, я вижу php5-dev в списке, но пакетов php7.0 нет вообще.
Соломон Клоссон
@SolomonClosson Это зависит от версии ОС, которую вы используете.
M_R_K
1
Если вместо этого вы установите пакет php-dev, PHP всегда обновится до последней стабильной версии. Если вы устанавливаете php7.0-dev и PHP 7.1 выпущен, вы, как правило, не будете обновлены до него.
MacroMan
Не могли бы вы обновить свой ответ и добавить решение для PHP 8? Теперь, когда PHP8 альфа 1 здесь ...
7
22

Ох .. Я запустил его, набрав /usr/bin/phpizeвместо только phpize.

Хришикеш Чоудхари
источник
8
В этом случае / usr / bin отсутствует в вашей переменной PATH, но я предполагаю, что так и должно быть. Делай PATH=$PATH\:/usr/bin; export PATH, и phpizeбудешь работать в будущем.
Берри Лангерак
Я получил это сообщение об ошибке "Общие библиотеки ffmpeg не найдены. Убедитесь, что ffmpeg скомпилирован как общие библиотеки с использованием параметра --enable-shared" Я использую эту команду "phpize", она работает, но когда я запускаю это "./configure && make "приходит эта ошибка
Чинтан Гор
14

В Redhat Enterprise / CentOS используйте yumдля установки php-develмодуля:

yum install php-devel

Для PHP 7 вам нужно:

yum install php70-php-devel
Федорки "ТАК прекратить вредить"
источник
1
Это приводит No package php-devel availableдля меня.
Призрак Уотсон
Для PHP7 мне нужно было использоватьphp70-php-devel
MECU
yum install php72-php-develдля PHP 7.2
Йозеф
2
и используйте этоln -s /opt/remi/php72/root/bin/phpize /usr/bin/phpize
Джозеф
7

Хм ... на самом деле я не знаю, как это решило это? Но следующие шаги решили это для меня:

find / -name 'config.m4'

Теперь посмотрите, находится ли config.m4 где-нибудь в папке с тем, что вы хотите phpize. Перейдите в эту папку и запустите phpize прямо там.

вздор
источник
6

Шаг - 1: Если вы не уверены в установленной версии php, сначала выполните следующую команду в терминале

php -v

Вывод: приведенная выше команда выведет версию php, установленную на вашем компьютере, моя версия 7.2

PHP 7.2.3-1ubuntu1 (cli) (built: Mar 14 2018 22:03:58) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.2.3-1ubuntu1, Copyright (c) 1999-2018, by Zend Technologies

Шаг 2: Затем для установки phpize выполните следующую команду, так как моя версия php - 7.2.3. я заменю его на 7.2, поэтому команда будет,

sudo apt-get install php7.2-dev

Шаг 3: Готово!

Альтернативный метод (необязательно). Чтобы автоматически установить версию phpize на основе версии php, установленной на вашем компьютере, выполните следующую команду.

sudo apt-get install php-dev

Эта команда автоматически обнаружит соответствующую версию установленного php и установит соответствующий phpize для того же.

Маной Сельвин
источник
5

Для Ubuntu 14.04LTS с PHP 7, выполните:

sudo apt-get install php-dev

Затем установите:

pecl install memcache
pingle60
источник
оберните биты кода
обратными чертами,
1
На самом деле, использование только php-dev установит версию, выпущенную и поддерживаемую для вашего дистрибутива. Так что на Ubuntu 12 он установит php5-dev.
MacroMan
5

В Ubuntu 16.04 вы можете установить phpizeс помощью команды

aptitude install php7.1-dev // for php 7.1

что эквивалентно

apt-get install php7.1-dev // for php 7.1
num3ri
источник
2

Установить с linuxтерминала

sudo apt-get install <php_version>-dev

Пример :

sudo apt-get install php5-dev     #For `php` version 5
sudo apt-get install php7.0-dev   #For `php` version 7.0
Sumon Sarker
источник
1

Это может помочь кому-то на Ubuntu. Не обещаю.

sudo apt-get install libcurl3 php5-dev libcurl4-gnutls-dev libmagic-dev
sudo apt-get install php-http make
sudo pecl install pecl_http

И добавление "extension=http.so"в php.ini (обычно находится в /etc/php5/apache2/php.ini)

Затем перезапустите Apache ( sudo service apache2 restart).

Если сомневаетесь, проверьте ваши логи apache:

sudo su --
cd /var/log/apache2
tail -25 error.log

Http.so запускается или не работает?

ted.strauss
источник
1

Конечно в PHP7.2

sudo apt-get install php7.2-dev
HMagdy
источник
1

Для Ubuntu с установленным Plesk запустите apt-get install plesk-php56-dev, для других версий просто измените XX в phpXX (без точки)

Sanel
источник
1

Если у вас возникли проблемы с phpize, которого нет в CentOS7.6 после того, как вы установили соответствующие инструменты devel для вашей версии / версий PHP, этот путь, наконец, сработал для меня:

Для PHP 7.2.x

/opt/cpanel/ea-php72/root/usr/bin/phpize

Для PHP 7.3.x

/opt/cpanel/ea-php73/root/usr/bin/phpize

Запустите это в вашей папке, содержащей загруженное расширение PHP, например

cd /php-ext-brotli
/opt/cpanel/ea-php73/root/usr/bin/phpize
./configure --with-php-config=/opt/cpanel/ea-php73/root/usr/bin/php-config
make
make test
TheOldMan2000
источник
0

Перейдите в загруженную папку и там вы найдете config.m4. Откройте терминал и запустите phpsize.

Сантош Рай
источник
0

Например, если вы хотите использовать команду «phpize» для PHP 5.6, вы должны использовать полный путь: Код:

/opt/cpanel/ea-php56/root/usr/bin/phpize
Шобхит Верма
источник
0

У меня была именно такая проблема на macOS в 2018 году.

Для меня первый запуск, brew install phpпрежде чем sudo pecl install mongodbсделал свое дело.

Адам Диамент
источник