[PATCH] Configure: added new option --with-pcre-conf-opt=OPTIONS.

Maxim Dounin mdounin at mdounin.ru
Wed Dec 11 13:24:54 UTC 2013


Hello!

On Tue, Dec 10, 2013 at 11:08:03AM -0800, rand at sent.com wrote:

> > Of course any installed pcre instance can be used.  Moreover, 
> > nginx will try hard to detect various standard installations, see 
> > lib/pcre/conf.
> > 
> > The --with-pcre option was introduced to simplify building the 
> > library with nginx itself, which is sometimes practical, 
> > especially if there is no standard way to install the library 
> > (like, e.g., on win32).
> 
> reading @
> 
> 	lib/pcre/conf
> 
> I do note the 'trying hard', although I see no attempts to find in
> */lib64, or use pkg-config or pcre-config.

Support for pcre-config probably should be added, as it may 
simplify things.

> On my system, src is in 
> 
> 	/usr/local/src/pcre
> 
> pcre's configured as shared-only, with pcre-jit enabled,
> 
> 	./configure --enable-shared --disable-static --enable-jit
> 	--enable-pcregrep-jit ...
> 
> and build's installed in
> 
> 	/usr/local/bin/pcre-config --version
> 		8.34-RC
> 	pcre-config --libs --cflags
> 		-L/usr/local/lib64 -lpcre
> 		-I/usr/local/include
> 	pkg-config libpcre --libs --cflags
> 		-I/usr/local/include  -L/usr/local/lib64 -lpcre
> 
> That said, if I want nginx to enable pcre use, use pcre-jit, and use
> specifically that locally-installed pcre(jit) instance, what's the right
> nginx config?
> 
> This,
> 
> 	--with-pcre=/usr/local/src/pcre --with-pcre-jit
> 
> does not appear to be the correct choice.

As you already have libpcre installed, you don't need nginx to 
build it (and you don't need sources).  If nginx isn't able to 
find the pcre itself, use something like this to tell where to 
look for headers and library:

     ./configure --with-cc-opt="-I/usr/local/include" \
                 --with-ld-opt="-L/usr/local/lib64"

It should work.

-- 
Maxim Dounin
http://nginx.org/



More information about the nginx-devel mailing list