19

When I try to install APC via pecl install APC-3.1.5 or even pecl install APC I get following error when the package comes to the make command:

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 

I installed all possible missing things:

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

And still nothing.

4 Answers 4

35

Try

yum install pcre-devel 

before installing APC.

On Debian use

aptitude install libpcre3-dev 

instead.

4
  • 11
    +1 this worked for me, should be the accepted solution Commented Mar 18, 2011 at 19:59
  • worked like a charm... Commented Jul 25, 2012 at 12:00
  • +1 this worked for me, should be the accepted solution. Thanks Commented Nov 18, 2014 at 0:53
  • This fixed it for me too. +1 for accepted answer. Commented Jul 14, 2015 at 11:39
2

I would compile from source. Make sure you delete anything that the package installers left behind. You probably have old extension directories laying around from older php versions. rm -rf them and their contents so you wont have any confusion.

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 

For the config= argument, run which php, and add -config to the result

If you get this error (Same as one you posted)

In file included from /usr/local/src/APC-3.1.5/apc.c:38: /usr/include/php/ext/pcre/php_pcre.h:29:18: error: pcre.h: No such file or directory In file included from /usr/local/src/APC-3.1.5/apc.c:38: /usr/include/php/ext/pcre/php_pcre.h:45: error: expected '=', ',', ';', 'asm' or 'attribute' before '' token /usr/include/php/ext/pcre/php_pcre.h:46: error: expected '=', ',', ';', 'asm' or 'attribute' before '' token /usr/include/php/ext/pcre/php_pcre.h:52: error: expected specifier-qualifier-list before 'pcre' /usr/local/src/APC-3.1.5/apc.c:362: error: expected specifier-qualifier-list before 'pcre' /usr/local/src/APC-3.1.5/apc.c: In function 'apc_regex_compile_array': /usr/local/src/APC-3.1.5/apc.c:419: error: 'apc_regex' has no member named 'preg' /usr/local/src/APC-3.1.5/apc.c:419: error: 'apc_regex' has no member named 'preg' /usr/local/src/APC-3.1.5/apc.c:420: error: 'apc_regex' has no member named 'nreg' /usr/local/src/APC-3.1.5/apc.c:420: error: 'apc_regex' has no member named 'nreg' /usr/local/src/APC-3.1.5/apc.c: In function 'apc_regex_match_array': /usr/local/src/APC-3.1.5/apc.c:452: error: 'apc_regex' has no member named 'preg' /usr/local/src/APC-3.1.5/apc.c:452: error: 'apc_regex' has no member named 'preg' /usr/local/src/APC-3.1.5/apc.c:453: error: 'apc_regex' has no member named 'nreg' /usr/local/src/APC-3.1.5/apc.c:453: error: 'apc_regex' has no member named 'nreg' make: *** [apc.lo] Error 1

Then you have to install pcre and make sure it's from the / directory or it will not install.

yum install pcre-devel make make install 
1
  • If you get a warning about the --with-apxs flag, you can ignore it. Commented May 28, 2012 at 21:00
0

it looks like you are trying to install APC on a system running PHP < 5.2.x. Version 3.1 of APC requires 5.2.x. I'm assuming your running CentOS 5.5 which ships with PHP 5.1.x.

try compiling and installing APC 3.0.19 from http://pecl.php.net/package/APC. We have had success deploying APC 3.0 on our CentOS servers.

2
  • 1
    No I have php 5.3.3 installed and still the pecl wont install it correctly... i think their repo is corrupted. I had as you suggested to manually compile it. Commented Nov 29, 2010 at 11:51
  • @sangoku : me too struck with the same. if you got any solution plz share here. my php version is 5.3.2 and gets this error procedure entry point pcre_exe could not be located Commented Nov 30, 2010 at 9:01
0

In Ubuntu:

aptitude install libpcre3-dev 

And then:

pecl install apc 
3
  • No new information (TM). Downvoting. Commented Jun 14, 2013 at 21:48
  • Thanks man. For Ubuntu users that's a useful information. I could not comment on the previous answer (comments are still disabled for me, i can only answer). Commented Jun 14, 2013 at 22:09
  • thanks. Could not find what is wrong with my ubuntu. Helped me. Commented May 29, 2014 at 11:35

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.