天天看點

pcre和nginx安裝問題

啟動nginx發現

nginx: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory

遂檢查pcre的安裝,由于是在測試安裝腳本,遂檢查安裝是否成功,從腳本運作來看,是成功編譯了的,後來又重新編譯pcre

configure    正常

make         正常

 /usr/bin/install -c -m 644 pcre.h pcrecpparg.h pcre_stringpiece.h '/usr/local/include'

test -z "/usr/local/lib/pkgconfig" || /bin/mkdir -p "/usr/local/lib/pkgconfig"

 /usr/bin/install -c -m 644 libpcre.pc libpcreposix.pc libpcrecpp.pc '/usr/local/lib/pkgconfig'

make  install-data-hook

make[3]: Entering directory `/usr/local/src/itnihao_lnmp/nginx/pcre-8.30'

ln -s pcre_assign_jit_stack.3           /usr/local/share/man/man3/pcre16_assign_jit_stack.3

ln -s pcre_compile.3                    /usr/local/share/man/man3/pcre16_compile.3

ln: creating symbolic link `/usr/local/share/man/man3/pcre16_compile.3': File exists

make[3]: *** [install-data-hook] Error 1

make[3]: Leaving directory `/usr/local/src/itnihao_lnmp/nginx/pcre-8.30'

make[2]: *** [install-data-am] Error 2

make[2]: Leaving directory `/usr/local/src/itnihao_lnmp/nginx/pcre-8.30'

make[1]: *** [install-am] Error 2

make[1]: Leaving directory `/usr/local/src/itnihao_lnmp/nginx/pcre-8.30 

處理辦法

rm /usr/local/share/man/man3/pcre* -rf

make clean

make install 立即OK,說明剛才的prce安裝是沒有問題的

下面檢視nginx的lipcre問題

 find / -name libpcre.so.1

/usr/local/lib/libpcre.so.1

ldconfig -v|grep pcre

ldconfig: Path `/usr/local/lib' given more than once  報錯了

        libpcrecpp.so.0 -> libpcrecpp.so.0.0.0

        libpcre.so.1 -> libpcre.so.1.0.0

        libpcreposix.so.0 -> libpcreposix.so.0.0.0

        libpcre.so.0 -> libpcre.so.0.0.1

cat /etc/ld.so.conf

include ld.so.conf.d/*.conf

/usr/local/include

/usr/local/lib  提示多了這行,删除掉

再次啟動nginx,則OK

繼續閱讀