search正确的方式来编译后缀

我正在从源代码编译最新版本的postfix时遇到问题。 目前我正在尝试编译版本3,因为Debian 7和最新的Ubuntu 14,10(版本2,9和2,11为后缀)是用Maildir协议configuration虚拟邮箱的bug。 我正在想使MySQL表存储本地别名和虚拟邮箱,但我想提供SMTP身份validation访问引入SASL与dovecot作为IMAP服务器。 CCARGS和AUXLIBS有什么区别?

我下载了cyrus-sasl包来构build和安装,并且使用这些参数指向makefiles: make CCARGS='-DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/tmp/cyrus-sasl/include' AUXLIBS='-lsasl2'其中include是文件夹与sasl来源。

这样,我在这里得到错误报告。 正如Mohsen所build议的,我附加了

 -ldb -lnsl -lresolv 

AUXLIBS但它会引发另一个错误,我还没有find任何解决scheme,从这一点上继续。

这是错误:

 gcc -I. -I../../include -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/tmp/cyrus-sasl/include -DHAS_PCRE -UUSE_DYNAMIC_LIBS -DDEF_SHLIB_DIR=\"no\" -UUSE_DYNAMIC_MAPS -Wmissing-prototypes -Wformat -Wno-comment -g -O -I. -I../../include -DLINUX3 -c smtpd.c smtpd.c: In function 'xclient_cmd': smtpd.c:4028:11: error: 'SMTPD_STATE' has no member named 'tls_context' if (state->tls_context == 0) /* TLS from XCLIENT proxy? */ 

我错过什么或做错了什么?

使用Maildir协议configuration虚拟邮箱的问题

我使用Dovecot LMTP传送到Maildir盒子,没有任何问题。

我想提供SMTP身份validation访问介绍SASL与dovecot作为IMAP服务器

更简单的方法是通过Dovecot对SMTP用户进行身份validation,因此您不需要同时configurationSASL身份validation。

 service auth { unix_listener auth-userdb { mode = 0666 } unix_listener /var/spool/postfix/private/auth { mode = 0666 user = postfix group = postfix } } service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { mode = 0660 user = postfix group = postfix } } 

到你的/etc/dovecot/conf.d/10-master.conf

然后

 virtual_transport = lmtp:unix:private/dovecot-lmtp smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous smtpd_sasl_type = dovecot smtpd_sasl_path = private/auth 

到你的/etc/postfix/main.cf ,你就完成了。