2026/08/16(日)dovecot 2.4.4 は、FreeBSD ではそのままコンパイル不能

2026/08/16 04:11 サーバ運営・管理
今年5月に dovecot 2.4 系は、 2.4.3 → 2.4.4 へ更新提供されています。
だいぶ安定していているようですが、dovecot Ver 2.4.4 と FreeBSD 14/15 の組み合わせでは、
どう頑張っても、構築(ソースコードからのコンパイル)途上で、
gmake[3]: *** 'auth' に必要なターゲット '-L/usr/local/lib' を make するルールがありません. 中止.
gmake[3]: ディレクトリ '/usr/local/src/dovecot-2.4.4/src/auth' から出ます
gmake[2]: *** [Makefile:616: all-recursive] エラー 1
gmake[2]: ディレクトリ '/usr/local/src/dovecot-2.4.4/src' から出ます
gmake[1]: *** [Makefile:747: all-recursive] エラー 1
gmake[1]: ディレクトリ '/usr/local/src/dovecot-2.4.4' から出ます
gmake: *** [Makefile:589: all] エラー 2
というエラーで中断してしまう。

これの対処は、dovecot CE コミュニティ( https://dovecot.org/mailman3/archives/list/dovecot@dovecot.org/message/H5A63W7DX7A24DGW4VY6ESW32CBARCF2/ ,2026/08/16 現在)にて、解決手法が記載されているものの、これだけでは解決しない模様。。。

提起の src/auth ディレクトリ配下の
 --- src/auth/Makefile.am.orig
 +++ src/auth/Makefile.am
 @@ -200,7 +200,7 @@ endif
  endif
 
  if HAVE_LUA
 -auth_libs += $(LIBDOVECOT_LUA) $(LUA_LIBS)
 +auth_libs += $(LIBDOVECOT_LUA)
  endif
 
  if AUTH_LUA_PLUGIN
の変更だけでは、当方の環境では、このコンパイルエラーを回避できず、更に、
Makefile.in ファイルを
 --- Makefile.in.orig    2026-05-12 19:49:15.000000000 +0900
 +++ Makefile.in 2026-08-13 02:17:08.000000000 +0900
 @@ -106,7 +106,7 @@

  @HAVE_LDAP_TRUE@@LDAP_PLUGIN_TRUE@am__append_6 = libauthdb_ldap.la
  @HAVE_LDAP_TRUE@@LDAP_PLUGIN_FALSE@am__append_7 = $(LIBDOVECOT_LDAP)
 -@HAVE_LUA_TRUE@am__append_8 = $(LIBDOVECOT_LUA) $(LUA_LIBS)
 +@HAVE_LUA_TRUE@am__append_8 = $(LIBDOVECOT_LUA)
  @AUTH_LUA_PLUGIN_TRUE@am__append_9 = libauthdb_lua.la
  subdir = src/auth
  ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
のように変更したことで、構築できました。参考になれば幸いです。