Re: Building on FreeBSD 14.4

Frank Volf via dovecot <[email protected]> Mon, 18 May 2026 16:40:54 +0200
Newsgroups gmane.mail.imap.dovecot
Message-ID <[email protected]>
Hi Stuart,

Thanks for the reply, unfortunately it did not work for me, but you 
provided an excellent hint.
If I apply the same change to Makefile.in in src/auth and reconfigure 
then it works for me:

    --- Makefile.in.orig    2026-05-12 12:49:15.000000000 +0200
    +++ Makefile.in 2026-05-18 15:52:04.839865000 +0200
    @@ -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


The next problem that I'm having that I see many warnings like this:

    libtool: warning: Linking the shared library
    libdcrypt_openssl_static.la against the loadable module
    libtool: warning: libssl_iostream_openssl.so is not portable!

or

    libtool: warning: Linking the shared library
    lib11_imap_quota_plugin.la against the loadable module
    libtool: warning: lib10_quota_plugin.so is not portable!

and I have no clue, if this is a problem or a concern for me, or that 
they can be safely ignored.

Kind regards,

Frank


Op 18-5-2026 om 12:48 schreef Stuart Henderson via dovecot:
> On 2026-05-18, Aki Tuomi via dovecot<[email protected]> wrote:
>>> On 18/05/2026 02:59 EEST Frank Volf via dovecot<[email protected]> wrote:
>>>
>>>   
>>> Hi,
>>>
>>> I'm trying to build dovecot-2.4.4 on FreeBSD 14.4 and I get a strange
>>> error message.
>>>
>>> What I did is download and extract dovecot-2.4.4.tar.gz and then run
>>> ./configure without any arguments.
>>> After typing make the build started without any problems until this point:
>>>
>>>      ....
>>>      Making all in auth
>>>         CC       test_auth_cache-auth-cache.o
>>>         CC       test_auth_cache-test-auth-cache.o
>>>         CC       auth-main.o
>>>         CC       auth-auth.o
>>>         CC       auth-auth-cache.o
>>>         CC       auth-auth-client-connection.o
>>>         CC       auth-auth-master-connection.o
>>>         CC       auth-auth-policy.o
>>>         CC       auth-auth-penalty.o
>>>         CC       auth-auth-request.o
>>>         CC       auth-auth-request-fields.o
>>>         CC       auth-auth-request-handler.o
>>>         CC       auth-auth-request-var-expand.o
>>>         CC       auth-auth-sasl-mech-apop.o
>>>         CC       auth-auth-sasl-mech-dovecot-token.o
>>>         CC       auth-auth-sasl-mech-oauth2.o
>>>         CC       auth-auth-sasl.o
>>>         CC       auth-auth-settings.o
>>>         CC       auth-auth-fields.o
>>>         CC       auth-auth-token.o
>>>         CC       auth-auth-worker-connection.o
>>>         CC       auth-auth-worker-server.o
>>>         CC       auth-db-oauth2.o
>>>         CC       auth-db-sql.o
>>>         CC       auth-db-passwd-file.o
>>>         CC       auth-passdb.o
>>>         CC       auth-passdb-blocking.o
>>>         CC       auth-passdb-bsdauth.o
>>>         CC       auth-passdb-cache.o
>>>         CC       auth-passdb-oauth2.o
>>>         CC       auth-passdb-passwd.o
>>>         CC       auth-passdb-passwd-file.o
>>>         CC       auth-passdb-pam.o
>>>         CC       auth-passdb-sql.o
>>>         CC       auth-passdb-static.o
>>>         CC       auth-userdb.o
>>>         CC       auth-userdb-blocking.o
>>>         CC       auth-userdb-passwd.o
>>>         CC       auth-userdb-passwd-file.o
>>>         CC       auth-userdb-prefetch.o
>>>         CC       auth-userdb-static.o
>>>         CC       auth-userdb-sql.o
>>>         CC       auth-db-ldap.o
>>>         CC       auth-db-ldap-sasl.o
>>>         CC       auth-db-ldap-settings.o
>>>         CC       auth-passdb-ldap.o
>>>         CC       auth-userdb-ldap.o
>>>         CC       auth-db-lua.o
>>>         CC       auth-passdb-lua.o
>>>         CC       auth-userdb-lua.o
>>>      make[3]: don't know how to make -L/usr/local/lib. Stop
>>>
>>>      make[3]: stopped making "all" in /home/volf/dovecot-2.4.4/src/auth
>>>      *** Error code 1
>>>
>>> So, apparently make is confused and thinks that the compiler/linker
>>> commandline option is an item to build.
>>> I'm at loss how to solve this.
>>>
>>> I would appreciate it, if somebody could give me a hint how to solve this.
>>>
>>> Kind regards,
>>>
>>> Frank
>>>
>>>
>>>
>>>
>>>     Hi,
>>>
>>>     I'm trying to build dovecot-2.4.4 on FreeBSD 14.4 and I get a strange
>>>     error message.
>>>
>>>     What I did is download and extract dovecot-2.4.4.tar.gz and then run
>>>     ./configure without any arguments.
>>>     After typing make the build started without any problems until this point:
>>>
>>>       ....
>>>       Making all in auth
>>>         CC       test_auth_cache-auth-cache.o
>>>         CC       test_auth_cache-test-auth-cache.o
>>>         CC       auth-main.o
>>>         CC       auth-auth.o
>>>         CC       auth-auth-cache.o
>>>         CC       auth-auth-client-connection.o
>>>         CC       auth-auth-master-connection.o
>>>         CC       auth-auth-policy.o
>>>         CC       auth-auth-penalty.o
>>>         CC       auth-auth-request.o
>>>         CC       auth-auth-request-fields.o
>>>         CC       auth-auth-request-handler.o
>>>         CC       auth-auth-request-var-expand.o
>>>         CC       auth-auth-sasl-mech-apop.o
>>>         CC       auth-auth-sasl-mech-dovecot-token.o
>>>         CC       auth-auth-sasl-mech-oauth2.o
>>>         CC       auth-auth-sasl.o
>>>         CC       auth-auth-settings.o
>>>         CC       auth-auth-fields.o
>>>         CC       auth-auth-token.o
>>>         CC       auth-auth-worker-connection.o
>>>         CC       auth-auth-worker-server.o
>>>         CC       auth-db-oauth2.o
>>>         CC       auth-db-sql.o
>>>         CC       auth-db-passwd-file.o
>>>         CC       auth-passdb.o
>>>         CC       auth-passdb-blocking.o
>>>         CC       auth-passdb-bsdauth.o
>>>         CC       auth-passdb-cache.o
>>>         CC       auth-passdb-oauth2.o
>>>         CC       auth-passdb-passwd.o
>>>         CC       auth-passdb-passwd-file.o
>>>         CC       auth-passdb-pam.o
>>>         CC       auth-passdb-sql.o
>>>         CC       auth-passdb-static.o
>>>         CC       auth-userdb.o
>>>         CC       auth-userdb-blocking.o
>>>         CC       auth-userdb-passwd.o
>>>         CC       auth-userdb-passwd-file.o
>>>         CC       auth-userdb-prefetch.o
>>>         CC       auth-userdb-static.o
>>>         CC       auth-userdb-sql.o
>>>         CC       auth-db-ldap.o
>>>         CC       auth-db-ldap-sasl.o
>>>         CC       auth-db-ldap-settings.o
>>>         CC       auth-passdb-ldap.o
>>>         CC       auth-userdb-ldap.o
>>>         CC       auth-db-lua.o
>>>         CC       auth-passdb-lua.o
>>>         CC       auth-userdb-lua.o
>>>       make[3]: don't know how to make -L/usr/local/lib. Stop
>>>
>>>       make[3]: stopped making "all" in /home/volf/dovecot-2.4.4/src/auth
>>>       *** Error code 1
>>>
>>>     So, apparently make is confused and thinks that the compiler/linker
>>>     commandline option is an item to build.
>>>     I'm at loss how to solve this.
>>>
>>>     I would appreciate it, if somebody could give me a hint how to solve this.
>>>
>>>     Kind regards,
>>>
>>>     Frank
>> Can you run `make V=1` please? Shows what's going on.
> it doesn't really help, because this is make trying to build
> "-L/usr/local/lib" rather than an error coming from a program
> started by make.
>
> With make --debug=basic:
>
> Making all in auth
> GNU Make 4.4.1
> Built for x86_64-unknown-openbsd7.9
> Copyright (C) 1988-2023 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later<https://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> Reading makefiles...
> Updating makefiles....
> Updating goal targets....
>   File 'all' does not exist.
>    File 'all-am' does not exist.
>     File 'test-auth-cache' does not exist.
>      File 'auth' does not exist.
>       File '-L/usr/local/lib' does not exist.
>      Must remake target '-L/usr/local/lib'.
> gmake[3]: Entering directory '/usr/obj/ports/dovecot-2.4.4/build-amd64/src/auth'
> gmake[3]: *** No rule to make target '-L/usr/local/lib', needed by 'auth'.  Stop.
> gmake[3]: Leaving directory '/usr/obj/ports/dovecot-2.4.4/build-amd64/src/auth'
> gmake[2]: *** [Makefile:610: all-recursive] Error 1
> gmake[2]: Leaving directory '/usr/obj/ports/dovecot-2.4.4/build-amd64/src'
> gmake[1]: *** [Makefile:740: all-recursive] Error 1
> gmake[1]: Leaving directory '/usr/obj/ports/dovecot-2.4.4/build-amd64'
> gmake: *** [Makefile:582: all] Error 2
>
> This is because, in this:
>
> auth_libs = ../lib-auth/libauth-crypt.la $(AUTH_LUA_LIBS) \
> 	$(LIBDOVECOT_SQL) $(am__append_4) $(am__append_7) \
> 	$(am__append_8)
>
> am__append_8 includes -L/usr/local/lib as well as library names.
>
> It does build if I do this (and libexec/dovecot/auth is still linked
> to the libraries needed for lua)..
>
> Index: src/auth/Makefile.am
> --- 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
>
> _______________________________________________
> dovecot mailing list [email protected]
> To unsubscribe send an email [email protected]

_______________________________________________
dovecot mailing list -- [email protected]
To unsubscribe send an email to [email protected]