Hi agentzh,
这是打包机器的环境:
#cat /proc/version
Linux version 3.2.0-2-amd64 (Debian 3.2.16-1)
(debian-kernel@lists.debian.org) (gcc version 4.6.3 (Debian 4.6.3-1) )
#1 SMP Mon Apr 30 05:20:23 UTC 2012
#ll /usr/lib/x86_64-linux-gnu/libpcre.so
lrwxrwxrwx 1 root root 34 Aug 6 2011
/usr/lib/x86_64-linux-gnu/libpcre.so ->
/lib/x86_64-linux-gnu/libpcre.so.3
#ll /lib/x86_64-linux-gnu/libpcre.so.3
lrwxrwxrwx 1 root root 17 Aug 6 2011
/lib/x86_64-linux-gnu/libpcre.so.3 -> libpcre.so.3.12.1
这是安装nginx的环境:
#cat /proc/version
Linux version 3.2.0-2-amd64 (Debian 3.2.18-1)
(debian-kernel@lists.debian.org) (gcc version 4.6.3 (Debian 4.6.3-1) )
#1 SMP Mon May 21 17:45:41 UTC 2012
#ll /usr/lib/x86_64-linux-gnu/libpcre.so
lrwxrwxrwx 1 root root 34 May 2 06:15
/usr/lib/x86_64-linux-gnu/libpcre.so ->
/lib/x86_64-linux-gnu/libpcre.so.3
#ll /lib/x86_64-linux-gnu/libpcre.so.3
lrwxrwxrwx 1 root root 17 May 2 06:15
/lib/x86_64-linux-gnu/libpcre.so.3 -> libpcre.so.3.13.1
这样看的话,两者的PCRE版本确实不同。
我之后在配置和打包的机器环境相同的另一台机器上进行安装,可以成功。
但有一个警告信息:
insserv: warning: script 'rc.fw' missing LSB tags and overrides
请问这个是/etc/init.d/nginx引起的吗?或是其他原因?
打包的机器和安装的机器需要环境完全相同(主要指nginx 依赖的包)才可以?
谢谢
在 2012年6月9日 上午9:59,agentzh <age...@gmail.com> 写道:
> Hello!
>
> 2012/6/9 Wenhua Zhang <shi...@gmail.com>:
>>
>> 请问有没有办法在制作debian包的时候将这个解决?
>> 比如让nginx依赖libpcre.so.3而不是libpcre.so.0?
>>
>
> 貌似你的打包机器和目标机器的环境并不相同,至少它们安装的 PCRE 的版本并不相同。一个简单的做法是确保二者系统中安装的 PCRE
> 版本一致。更累一些的做法是通过 ./configure 的 --with-cc-opt 和 --with-ld-opt 选项让打包机器上的
> openresty 在构造时使用你指定的 PCRE 的版本(如果你的打包机器上同时存在多个版本的 PCRE 的话)。
>
> Regards,
> -agentzh
>
>