用现有的pcre编译nginx?

我总是这样安装nginx

wget ...nginx... tar zxvf ... cd nginx... ./configure --with-pcre=../pcre_source_path make && make install 

nginx和pcre将安装到/ usr / local /

但现在我想将它们安装到/ usr / local / lnmp /,所以我尝试像这样configurationnginx:

 ./configure --with-pcre=../pcre_source_path --prefix=/usr/local/lnmp/nginx/ 

然后我很困惑:我的pcre在哪里安装? 我发现一个/ usr / local / share / doc / pcre,所以我认为它被安装到/ usr / local /

然后我试图独立安装pcre,所以我这样做了:

 wget ...pcre tar zxvf pcre... cd pcre... ./configure --prefix=/usr/local/lnmp/pcre make && make install 

使用上面的命令,我安装了pcre到/usr/local/lnmp/pcre/成功,但是我不能用这个pcre编译nginx …(我试过./configure --with-pcre=/usr/local/lnmp/pcre/ ,但它给了我一个错误,因为它必须是--with-pcre=[pcre_source_path]

在这种情况下,当针对自定义编译库(如pcre,zlib和OpenSSL)编译nginx时,必须使用选项--with-cc-opt--with-ld-opt

在你所描述的情况下, configure命令应该是:

 ./configure --prefix=/usr/local/lnmp/nginx/ --with-cc-opt="-I /usr/local/lnmp/pcre/include" --with-ld-opt="-L /usr/local/lnmp/pcre/lib" 

更多参考资料: Nginx论坛 , Nginx文档(安装)