sudo pecl install apc returns error

PhpPearApcPecl

Php Problem Overview


I run the command: sudo pecl install apc

The file gets downloaded, the configuration succeeds, then make is launched and I get the following error.

/usr/include/php5/ext/pcre/php_pcre.h:29: fatal error: pcre.h: No such file or directory

Is there a way to fix it?

Php Solutions


Solution 1 - Php

PCRE is a dependency for installing APC. You can install it pretty quick with

yum install pcre-devel or apt-get install libpcre3-dev

once it's installed, re-run

sudo pecl install apc

Solution 2 - Php

sudo apt-get install libpcre3-dev is the answer.

So to be able to install pecl [install extension]

the following packages are required:

sudo apt-get install php5-pear php5-dev libpcre3-dev

Solution 3 - Php

What version of PHP?

For a while, some months ago, I had trouble installing APC, and could only make it work with pecl install apc-beta

If you're not dealing with a production system, you might try that.

Solution 4 - Php

Have you install a PHP extension via PECL before?

Does the file /usr/include/php5/ext/pcre/php_pcre.h actually exist?

You could get this error because of the following

  1. Incorrect permissions
  2. PECL directory configuration is incorrect.

Solution 5 - Php

You seem to be missing the development version of PHP5. On Ubuntu you can install it using:

sudo aptitude install php5-dev

Solution 6 - Php

I have posted an answer for the same here. But I am still posting here for reference

To include pcre.h file, search the package archives for the pcre.h file. To do this I use a command called apt-file ( > apt-get install apt-file

and

> apt-file update

if you don’t have it installed). Then search for the pcre package:

> apt-file search -x "/pcre.h$"

The -x informs the command that I want to use a regular expression as the pattern. apt-file provided me with three hits:

  • kannel-dev: /usr/include/kannel/gwlib/pcre.h
  • libajax6-dev: /usr/include/ajax/pcre.h
  • libpcre3-dev: /usr/include/pcre.h

The last one is the one I want:

> apt-get install libpcre3-dev

This will solve the problem with pcre.h file compilation problem. Hope it will help others, who may come to find an answer to this thread.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionNicolas de FontenayView Question on Stackoverflow
Solution 1 - PhpChris HenryView Answer on Stackoverflow
Solution 2 - PhpNicolas de FontenayView Answer on Stackoverflow
Solution 3 - PhptimdevView Answer on Stackoverflow
Solution 4 - PhpCobbyView Answer on Stackoverflow
Solution 5 - PhpJohn PView Answer on Stackoverflow
Solution 6 - PhpstackMonkView Answer on Stackoverflow