Impossibile installare APC tramite APC installazione pecl


18

Quando provo a installare APC tramite pecl install APC-3.1.5 o anche pecl install APCottengo il seguente errore quando il pacchetto arriva al makecomando:

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

Ho installato tutte le possibili cose mancanti:

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

E ancora niente.

Risposte:


35

Provare

yum install pcre-devel

prima di installare APC.

Sull'uso di Debian

aptitude install libpcre3-dev

anziché.


11
+1 questo ha funzionato per me, dovrebbe essere la soluzione accettata
— iainlbc

ha funzionato come un fascino ...
— Emmanuel Okeke,

+1 ha funzionato per me, dovrebbe essere la soluzione accettata. Grazie
— Riz,

Questo ha risolto anche per me. +1 per la risposta accettata.
— Zigojacko,

2

Compilerei dalla fonte. Assicurati di eliminare tutto ciò che i programmi di installazione dei pacchetti hanno lasciato. Probabilmente hai vecchie directory di estensione che giacciono intorno a versioni php precedenti. rm -rf loro e il loro contenuto in modo da non avere alcuna confusione.

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

Per l'argomento config =, esegui quale php e aggiungi -config al risultato

Se ricevi questo errore (uguale a quello che hai pubblicato)

Nel file incluso da /usr/local/src/APC-3.1.5/apc.c:38: /usr/include/php/ext/pcre/php_pcre.h:29:18: errore: pcre.h: nessuna tale file o directory Nel file incluso da /usr/local/src/APC-3.1.5/apc.c:38: /usr/include/php/ext/pcre/php_pcre.h:45: errore: previsto '=', ',', ';', 'asm' o ' attributo ' prima di ' ' token /usr/include/php/ext/pcre/php_pcre.h:46: errore: previsto '=', ',', ';' , "asm" o " attributo " prima di "'token /usr/include/php/ext/pcre/php_pcre.h:52: errore: elenco specificatori-qualificatore-elenco previsto prima di' pcre '/usr/local/src/APC-3.1.5/apc.c:362: errore: elenco specificatori-qualificatore previsto prima di 'pcre' /usr/local/src/APC-3.1.5/apc.c: nella funzione 'apc_regex_compile_array': /usr/local/src/APC-3.1.5/apc. c: 419: errore: 'apc_regex' non ha membri denominati 'preg' /usr/local/src/APC-3.1.5/apc.c:419: errore: 'apc_regex' non ha membri denominati 'preg' / usr / local / src / APC-3.1.5 / apc.c: 420: errore: 'apc_regex' non ha membri denominati 'nreg' /usr/local/src/APC-3.1.5/apc.c:420: errore: ' apc_regex 'non ha membri denominati' nreg '/usr/local/src/APC-3.1.5/apc.c: nella funzione' apc_regex_match_array ': /usr/local/src/APC-3.1.5/apc.c:452 : errore: 'apc_regex 'non ha membri denominati' preg '/usr/local/src/APC-3.1.5/apc.c:452: errore:' apc_regex 'non ha membri denominati' preg '/usr/local/src/APC-3.1 .5 / apc.c: 453: errore: 'apc_regex' non ha membri denominati 'nreg' /usr/local/src/APC-3.1.5/apc.c:453: errore: 'apc_regex' non ha membri denominati ' nreg 'make: *** [apc.lo] Errore 1

Quindi devi installare pcre e assicurarti che provenga dalla directory / o non verrà installato.

yum install pcre-devel

make
make install

Se ricevi un avviso sulla bandiera --with-apxs, puoi ignorarla.
— Joseph Lust,

0

sembra che tu stia cercando di installare APC su un sistema che esegue PHP <5.2.x. La versione 3.1 di APC richiede 5.2.x. Suppongo che il tuo CentOS 5.5 in esecuzione sia fornito con PHP 5.1.x.

prova a compilare e installare APC 3.0.19 da http://pecl.php.net/package/APC . Abbiamo avuto successo con la distribuzione di APC 3.0 sui nostri server CentOS.


1
No, ho installato php 5.3.3 e il pecl non lo installerà correttamente ... penso che il loro repository sia danneggiato. Ho avuto come hai suggerito di compilarlo manualmente.
— sangoku,

@sangoku: anche io ho colpito lo stesso. se hai qualche soluzione, condividi qui. la mia versione php è 5.3.2 e viene visualizzato questo erroreprocedure entry point pcre_exe could not be located
— RSK

0

In Ubuntu:

aptitude install libpcre3-dev

E poi:

pecl install apc

Nessuna nuova informazione (TM). Downvoting.
— Deer Hunter,

Grazie uomo. Per gli utenti di Ubuntu questa è un'informazione utile. Non ho potuto commentare la risposta precedente (i commenti sono ancora disabilitati per me, posso solo rispondere).
— EA

Grazie. Impossibile trovare cosa non va nel mio ubuntu. Mi ha aiutato.
— shukshin.ivan,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.