在CentOS 6.2 64bit上编译安装nginx-1.21出错
[root@CDN01 sbin]# ./nginx ./nginx: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory
从错误看出是缺少lib文件导致,进一步查看下
[root@CDN01 sbin]# ldd $(which /usr/local/app/nginx/sbin/nginx) linux-vdso.so.1 => (0x00007fff4d78b000) libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f7fa9545000) libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f7fa930e000) libpcre.so.1 => not found libc.so.6 => /lib64/libc.so.6 (0x00007f7fa8f6c000) /lib64/ld-linux-x86-64.so.2 (0x00007f7fa9766000) libfreebl3.so => /lib64/libfreebl3.so (0x00007f7fa8d0a000) libdl.so.2 => /lib64/libdl.so.2 (0x00007f7fa8b05000)
可以看出 libpcre.so.1 => not found 并没有找到,得手动链接到/lib64目录下!
[root@CDN01 sbin]# ln -s /usr/local/lib/libpcre.so.1 /lib64
然后在启动nginx就OK了!
PS:看来linux 64bit的系统,编译安装的时候,默认的lib文件都是放于32位目录下,得手动链接下,得特别注意下!