alexa 发表于 2008-03-10 18:27

BerkeleyDB needs compatible versions of libdb & db.h

原帖由 falalala 于 2008-1-22 15:53 发表 http://bbs.chinaunix.net/images/common/back.gif
Problem in Amavis::DB or Amavis::DB::SNMP code:
BerkeleyDB needs compatible versions of libdb & db.h
      you have db.h version 4.5.20 and libdb version 4.2.52
Compilation failed in require at (eval 92) line 15.
BEGIN failed--compilation aborted at (eval 92) line 15.





我也遇到同样的问题 原因是系统中有不同版本的BerkeleyDB 解决方法如下:

在安装BerkeleyDB perl模块的时候我用的是cpan自动安装出错因此到cpan.org下载一个手动编译安装

修改config.in文件中lib 和 include的路径重新编译安装 通过



官方原文:


Incompatible versions of db.h and libdb
---------------------------------------

BerkeleyDB seems to have built correctly, but you get an error like this
when you run the test harness:

$ make test
PERL_DL_NONLAZY=1 /home/paul/perl/install/bin/perl5.00503
-Iblib/arch -Iblib/lib -I/usr/local/lib/perl5/5.00503/i586-linux
-I/usr/local/lib/perl5/5.00503 -e 'use Test::Harness qw(&runtests $verbose);
$verbose=0; runtests @ARGV;' t/*.t
t/btree.............
BerkeleyDB needs compatible versions of libdb & db.h
          you have db.h version 2.6.4 and libdb version 2.7.5
BEGIN failed--compilation aborted at t/btree.t line 25.
dubious
      Test returned status 255 (wstat 65280, 0xff00)
...      

Another variation on the theme of having two versions of Berkeley DB on
your system.

Solution: Setting the LIB & INCLUDE variables in config.in to point to the
          correct directories can sometimes be enough to fix this
          problem. If that doesn't work the easiest way to fix the
          problem is to either delete or temporarily rename the copies
          of db.h and libdb.a that you don't want BerkeleyDB to use.
          If you are running Linux, please read the Linux Notes section below.

yh81521 发表于 2008-03-10 21:37

# spamassassin -d --lint
warn: config: failed to parse line, skipping, in "/etc/mail/spamassassin/local.cf": rewrite_subject 1
warn: lint: 1 issues detected, please rerun with debug enabled for more information
我用的SpamAssassin3.2.3

这个错误怎么调试?哪出错了呢?有没有和我遇到一样错误的呢?

柳拂风 发表于 2008-03-11 09:54

"/etc/mail/spamassassin/local.cf":
rewrite_subject 1 这个选项有问题,注掉它试试

yh81521 发表于 2008-03-12 10:17

恩,注释掉就可以了。
但是柳兄,能解释下rewrite_subject 1的意思吗?我不用它会有什么问题吗?
它是不是和后面的配置rewrite_header Subject *****SPAM***** 相关联。是不是检测邮件标题的选项,去掉是不是会使过滤垃圾邮件主题出现问题?

[ 本帖最后由 yh81521 于 2008-3-12 10:21 编辑 ]

柳拂风 发表于 2008-03-12 11:13

rewrite_subject 1 这个选项成立时,
rewrite_header Subject *****SPAM*****这个选项才起作用,它是用来修改标题的


资料上是这么说的,我没法验证,因为我自己装的系统就没法启用rewrite_subject 1,可能跟一些perl模块有关,可是我也不知道跟哪个模块有关,所有spamassassin需要的perl模块我都安装并进行升级了。

不启用这个选项暂时没发现什么不良影响,垃圾邮件过滤效果还不错。

yh81521 发表于 2008-03-12 14:32

谢谢柳兄解答,那我就放心了,呵呵。。。

marion 发表于 2008-03-14 14:24

回复 #558 jiayong277 的帖子

你讲的再清楚一些或许有助于其他人帮你判断问题所在。

lminz 发表于 2008-03-14 22:47

我安装的时候忘记了删除sendmail,装好后都成功了才记起没删除,然后运行rpm -e sendmail --nodeps删除
删除后进webmail正常,但发送邮件时出错,显示Send fail, return code -1
maillog显示错误为
Mar 14 22:43:07 mailserver postfix/smtpd: fatal: open database /etc/aliases.db: No such file or directory
Mar 14 22:43:08 mailserver postfix/master: warning: process /usr/local/postfix/sbin/smtpd pid 25662 exit status 1
Mar 14 22:43:08 mailserver postfix/master: warning: /usr/local/postfix/sbin/smtpd: bad command startup -- throttling
请问老大应该如何修复?
我重新执行newaliases 提示 error while loading shared libraries: libmysqlclient.so.14;cannot open shared object file: No such file or directory
我装了 Mysqlclient 后可以运行newaliases,但还是不能发邮件。
错误日志如下
Mar 15 00:32:23 mailserver pop3d: LOGOUT, user=lmz@XXX.cn, ip=, top=0, retr=0, rcvd=12, sent=39, time=0
Mar 15 00:34:58 mailserver postfix/anvil: statistics: max connection rate 1/60s for (smtp:70.23.207.224) at Mar 15 00:26:26
Mar 15 00:34:58 mailserver postfix/anvil: statistics: max connection count 1 for (smtp:70.23.207.224) at Mar 15 00:26:26
Mar 15 00:34:58 mailserver postfix/anvil: statistics: max cache size 2 at Mar 15 00:28:50

[ 本帖最后由 lminz 于 2008-3-15 00:37 编辑 ]

marion 发表于 2008-03-16 08:43

回复 #567 lminz 的帖子

在一定程度上讲,postfix的目的是为了取代Sendmail,因此,postfix的许多程序和文件都同Sendmail同名,postfix安装完成后再删除sendmail会导致什么,我想这个不难猜到。

lminz 发表于 2008-03-16 22:19

原帖由 marion 于 2008-3-16 08:43 发表 http://bbs.chinaunix.net/images/common/back.gif
在一定程度上讲,postfix的目的是为了取代Sendmail,因此,postfix的许多程序和文件都同Sendmail同名,postfix安装完成后再删除sendmail会导致什么,我想这个不难猜到。
老大,有啥办法不?要重新安装一次?
页: 47 48 49 50 51 52 53 54 55 56 [57] 58 59 60 61 62 63 64 65 66
查看完整版本: RHEL4上安装基于postfix的全功能邮件服务器(全部使用目前最新源码包构建)