Не вдалося встановити APC через pecl встановити APC


18

Коли я намагаюся встановити APC через pecl install APC-3.1.5 або навіть, pecl install APCя отримую наступну помилку, коли пакет приходить до makeкоманди:

running: make
/bin/sh /var/tmp/pear-build-root/APC-3.1.5/libtool --mode=compile cc  -I. -I/var/tmp/APC -DPHP_ATOM_INC -I/var/tmp/pear-build-root/APC-3.1.5/include -I/var/tmp/pear-build-root/APC-3.1.5/main -I/var/tmp/APC -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib  -DHAVE_CONFIG_H  -g -O2   -c /var/tmp/APC/apc.c -o apc.lo
mkdir .libs
 cc -I. -I/var/tmp/APC -DPHP_ATOM_INC -I/var/tmp/pear-build-root/APC-3.1.5/include -I/var/tmp/pear-build-root/APC-3.1.5/main -I/var/tmp/APC -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib -DHAVE_CONFIG_H -g -O2 -c /var/tmp/APC/apc.c  -fPIC -DPIC -o .libs/apc.o
In file included from /var/tmp/APC/apc.c:44:
/usr/include/php/ext/pcre/php_pcre.h:29:18: error: pcre.h: No such file or directory
In file included from /var/tmp/APC/apc.c:44:
/usr/include/php/ext/pcre/php_pcre.h:37: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
/usr/include/php/ext/pcre/php_pcre.h:38: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
/usr/include/php/ext/pcre/php_pcre.h:44: error: expected specifier-qualifier-list before 'pcre'
/var/tmp/APC/apc.c:369: error: expected specifier-qualifier-list before 'pcre'
/var/tmp/APC/apc.c: In function 'apc_regex_compile_array':
/var/tmp/APC/apc.c:430: error: 'apc_regex' has no member named 'preg'
/var/tmp/APC/apc.c:430: error: 'apc_regex' has no member named 'preg'
/var/tmp/APC/apc.c:431: error: 'apc_regex' has no member named 'nreg'
/var/tmp/APC/apc.c:431: error: 'apc_regex' has no member named 'nreg'
/var/tmp/APC/apc.c: In function 'apc_regex_match_array':
/var/tmp/APC/apc.c:463: error: 'apc_regex' has no member named 'preg'
/var/tmp/APC/apc.c:463: error: 'apc_regex' has no member named 'preg'
/var/tmp/APC/apc.c:464: error: 'apc_regex' has no member named 'nreg'
/var/tmp/APC/apc.c:464: error: 'apc_regex' has no member named 'nreg'
make: *** [apc.lo] Error 1
ERROR: `make' failed

Я встановив усі можливі речі, які відсутні:

yum install php-devel httpd-devel
yum groupinstall ‘Development Tools’
yum groupinstall ‘Development Libraries’

І все одно нічого.

Відповіді:


35

Спробуйте

yum install pcre-devel

перед встановленням APC.

На використання Debian

aptitude install libpcre3-dev

замість цього.


11
+1 це працювало для мене, має бути прийнятим рішенням
iainlbc

працював як шарм ...
Еммануель Океке

+1 це працювало для мене, має бути прийнятим рішенням. Спасибі
Різ

Це зафіксувало і для мене. +1 за прийняту відповідь.
zigojacko

2

Я збирав би з джерела. Переконайтеся, що ви видалили все, що залишили інсталятори пакету. Напевно, у вас є старі каталоги розширень, що лежать у старих версіях php. rm -rf їх та їх вміст, щоб у вас не було плутанини.

cd ~ 
mkdir setups
cd setups 
wget http://pecl.php.net/get/APC-3.1.9.tgz 
tar -xvf APC-3.1.9.tgz 
cd APC-3.1.9
phpize
./configure --enable-apc --enable-apc-mmap --with-apxs --with-php-config=/usr/local/bin/php-config
make

Для config = аргументу запустіть php та додайте -config до результату

Якщо ви отримаєте цю помилку (таку ж, яку ви опублікували)

У файлі, включеному з /usr/local/src/APC-3.1.5/apc.c:38: /usr/include/php/ext/pcre/php_pcre.h:29:18: помилка: pcre.h: Немає такого файл або каталог У файлі, включеному з /usr/local/src/APC-3.1.5/apc.c:38: /usr/include/php/ext/pcre/php_pcre.h:45: помилка: очікувана '=', ',', ';', 'asm' або ' атрибут ' перед ' ' токен /usr/include/php/ext/pcre/php_pcre.h:46: помилка: очікувана '=', ',', ';' , "asm" або " атрибут " раніше "'token /usr/include/php/ext/pcre/php_pcre.h:52: помилка: очікуваний список специфікаторів-класифікаторів перед' pcre '/usr/local/src/APC-3.1.5/apc.c:362: помилка: очікуваний список специфікаторів-класифікаторів перед 'pcre' /usr/local/src/APC-3.1.5/apc.c: у функції 'apc_regex_compile_array': /usr/local/src/APC-3.1.5/apc. c: 419: error: 'apc_regex' не має учасника з ім'ям 'preg' /usr/local/src/APC-3.1.5/apc.c:219: error: 'apc_regex' не має учасника з іменем 'preg' / usr / local / src / APC-3.1.5 / apc.c: 420: помилка: 'apc_regex' не має учасника з ім'ям 'nreg' /usr/local/src/APC-3.1.5/apc.c:220: error: ' apc_regex 'не має учасника з ім'ям' nreg '/usr/local/src/APC-3.1.5/apc.c: у функції' apc_regex_match_array ': /usr/local/src/APC-3.1.5/apc.c:252 : помилка: 'apc_regex 'не має учасника з ім'ям "preg" /usr/local/src/APC-3.1.5/apc.c:152: помилка: "apc_regex" не має учасника з іменем "preg" /usr/local/src/APC-3.1 .5 / apc.c: 453: error: 'apc_regex' не має учасника з ім'ям 'nreg' /usr/local/src/APC-3.1.5/apc.c:153: error: 'apc_regex' не має учасника з іменем ' nreg 'make: *** [apc.lo] Помилка 1

Тоді вам доведеться встановити pcre і переконайтесь, що це з каталогу /, або він не встановиться.

yum install pcre-devel

make
make install

Якщо ви отримаєте попередження про прапор --with-apxs, його можна проігнорувати.
Йосип Похоть

0

схоже, ви намагаєтесь встановити APC в системі під управлінням PHP <5.2.x. Версія 3.1 APC вимагає 5.2.x. Я припускаю, що ви працюєте з CentOS 5.5, який постачається з PHP 5.1.x.

спробуйте компілювати та встановити APC 3.0.19 з http://pecl.php.net/package/APC . Ми успішно розгорнули APC 3.0 на наших серверах CentOS.


1
Ні, у мене встановлено php 5.3.3, і все ще pecl не буде встановити його правильно ... я думаю, що їх репо пошкоджена. Я мав, як ви запропонували, скласти його вручну.
сангоку

@sangoku: мене теж вразило те саме. якщо у вас є якесь рішення PLZ, поділіться тут. моя версія PHP 5.3.2 і отримує цю помилкуprocedure entry point pcre_exe could not be located
RSK

0

В Ubuntu:

aptitude install libpcre3-dev

І потім:

pecl install apc

Немає нової інформації (TM). Нахил
Мисливець на оленів

Спасибі людина. Для користувачів Ubuntu це корисна інформація. Я не міг коментувати попередню відповідь (коментарі для мене все ще відключені, я можу відповісти лише).
ea

Спасибі. Не вдалося знайти те, що не так у моєму ubuntu. Допомогли мені.
шукшин.іван
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.