krb5 port fails to build in newly upgraded jails 14.4

Kaya Saman <[email protected]> Tue, 7 Jul 2026 13:21:26 +0100
Newsgroups gmane.os.freebsd.devel.ports
Message-ID <[email protected]>
Hi all,


I'm recently upgrading my systems which contain various jails to version 
14.4.


Something that I've noticed is that the krb5 port seems to build and 
upgrade fine on all the upgraded base systems but fails in each jail 
that I'm trying to upgrade.


Upgrading the jails is just standard procedure following this:


https://docs.freebsd.org/en/books/handbook/jails/


This is the output of the current build process which suggests linker 
errors and something to do with "readline":


cc -DHAVE_CONFIG_H  -I../../include -I../../include -I. 
-DKRB5_DEPRECATED=1 -DKRB5_PRIVATE -I/usr/include -I/usr/local/include 
-isystem /usr/local/include -O2 -pipe -fstack-protector-strong -isystem 
/usr/local/include -fno-strict-aliasing -std=gnu99  
-Werror=unknown-warning-option -Wall -Wcast-align -Wshadow 
-Wmissing-prototypes -pedantic -Wno-format-zero-length -Woverflow 
-Wstrict-overflow -Wmissing-format-attribute -Wmissing-prototypes 
-Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function 
-Wunused-label -Wunused-variable -Wunused-value -Wunknown-pragmas 
-Wsign-compare -Wnewline-eof -Werror=uninitialized -Werror=pointer-arith 
-Werror=int-conversion -Werror=incompatible-pointer-types 
-Werror=implicit-int -Werror=strict-prototypes 
-Werror=declaration-after-statement 
-Werror-implicit-function-declaration -pthread  -c keytab_local.c
cc -DHAVE_CONFIG_H  -I../../include -I../../include -I. 
-DKRB5_DEPRECATED=1 -DKRB5_PRIVATE -I/usr/include -I/usr/local/include 
-isystem /usr/local/include -O2 -pipe -fstack-protector-strong -isystem 
/usr/local/include -fno-strict-aliasing -std=gnu99  
-Werror=unknown-warning-option -Wall -Wcast-align -Wshadow 
-Wmissing-prototypes -pedantic -Wno-format-zero-length -Woverflow 
-Wstrict-overflow -Wmissing-format-attribute -Wmissing-prototypes 
-Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function 
-Wunused-label -Wunused-variable -Wunused-value -Wunknown-pragmas 
-Wsign-compare -Wnewline-eof -Werror=uninitialized -Werror=pointer-arith 
-Werror=int-conversion -Werror=incompatible-pointer-types 
-Werror=implicit-int -Werror=strict-prototypes 
-Werror=declaration-after-statement 
-Werror-implicit-function-declaration -pthread  -c keytab.c
cc -DHAVE_CONFIG_H  -I../../include -I../../include -I. 
-DKRB5_DEPRECATED=1 -DKRB5_PRIVATE -I/usr/include -I/usr/local/include 
-isystem /usr/local/include -O2 -pipe -fstack-protector-strong -isystem 
/usr/local/include -fno-strict-aliasing -std=gnu99  
-Werror=unknown-warning-option -Wall -Wcast-align -Wshadow 
-Wmissing-prototypes -pedantic -Wno-format-zero-length -Woverflow 
-Wstrict-overflow -Wmissing-format-attribute -Wmissing-prototypes 
-Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function 
-Wunused-label -Wunused-variable -Wunused-value -Wunknown-pragmas 
-Wsign-compare -Wnewline-eof -Werror=uninitialized -Werror=pointer-arith 
-Werror=int-conversion -Werror=incompatible-pointer-types 
-Werror=implicit-int -Werror=strict-prototypes 
-Werror=declaration-after-statement 
-Werror-implicit-function-declaration -pthread  -c kadmin_ct.c
cc -DHAVE_CONFIG_H  -I../../include -I../../include -I. 
-DKRB5_DEPRECATED=1 -DKRB5_PRIVATE -I/usr/include -I/usr/local/include 
-isystem /usr/local/include -O2 -pipe -fstack-protector-strong -isystem 
/usr/local/include -fno-strict-aliasing -std=gnu99  
-Werror=unknown-warning-option -Wall -Wcast-align -Wshadow 
-Wmissing-prototypes -pedantic -Wno-format-zero-length -Woverflow 
-Wstrict-overflow -Wmissing-format-attribute -Wmissing-prototypes 
-Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function 
-Wunused-label -Wunused-variable -Wunused-value -Wunknown-pragmas 
-Wsign-compare -Wnewline-eof -Werror=uninitialized -Werror=pointer-arith 
-Werror=int-conversion -Werror=incompatible-pointer-types 
-Werror=implicit-int -Werror=strict-prototypes 
-Werror=declaration-after-statement 
-Werror-implicit-function-declaration -pthread  -c getdate.c
cc -L../../lib  -O2 -pipe  -fstack-protector-strong -isystem 
/usr/local/include -fno-strict-aliasing -std=gnu99  -L/usr/lib 
-Wl,-rpath,/usr/local/lib:/usr/lib  -L/usr/local/lib   -o kadmin.local 
kadmin.o kadmin_ct.o ss_wrapper.o getdate.o keytab_local.o 
../../lib/libss.a -lreadline -lkadm5srv_mit -lkdb5  -lgssrpc 
-lgssapi_krb5 -lgssrpc -lgssapi_krb5  -pthread -lpthread -lkrb5 
-lk5crypto -lcom_err -lkrb5support -lintl -L/usr/local/lib
cc -L../../lib  -O2 -pipe  -fstack-protector-strong -isystem 
/usr/local/include -fno-strict-aliasing -std=gnu99  -L/usr/lib 
-Wl,-rpath,/usr/local/lib:/usr/lib  -L/usr/local/lib   -o kadmin 
kadmin.o kadmin_ct.o ss_wrapper.o getdate.o keytab.o ../../lib/libss.a 
-lreadline -lkadm5clnt_mit -lgssrpc -lgssapi_krb5 -lkrb5 -lk5crypto 
-lcom_err -lkrb5support -lintl -L/usr/local/lib
ld: error: undefined symbol: tputs
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/display.c
 >>>               display.o:(rl_redisplay) in archive 
/usr/lib/libreadline.a
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/terminal.c
 >>>               terminal.o:(_rl_backspace) in archive 
/usr/lib/libreadline.a
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/terminal.c
 >>>               terminal.o:(rl_ding) in archive /usr/lib/libreadline.a
 >>> referenced 27 more times
 >>> did you mean: fputs
 >>> defined in: /lib/libc.so.7
ld: error: undefined symbol: tgetnum
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/terminal.c
 >>>               terminal.o:(_rl_get_screen_size) in archive 
/usr/lib/libreadline.a
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/terminal.c
 >>>               terminal.o:(_rl_get_screen_size) in archive 
/usr/lib/libreadline.a
 >>> did you mean: cgetnum
 >>> defined in: /lib/libc.so.7

ld: error: undefined symbol: tgetent
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/terminal.c
 >>>               terminal.o:(_rl_init_terminal_io) in archive 
/usr/lib/libreadline.a

ld: error: undefined symbol: tgetstr
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/terminal.c
 >>>               terminal.o:(_rl_init_terminal_io) in archive 
/usr/lib/libreadline.a

ld: error: undefined symbol: tgetflag
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/terminal.c
 >>>               terminal.o:(_rl_init_terminal_io) in archive 
/usr/lib/libreadline.a
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/terminal.c
 >>>               terminal.o:(_rl_init_terminal_io) in archive 
/usr/lib/libreadline.a
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/terminal.c
 >>>               terminal.o:(_rl_init_terminal_io) in archive 
/usr/lib/libreadline.a
 >>> referenced 1 more times

ld: error: undefined symbol: tgetnum
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/terminal.c
 >>>               terminal.o:(_rl_get_screen_size) in archive 
/usr/lib/libreadline.a
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/terminal.c
 >>>               terminal.o:(_rl_get_screen_size) in archive 
/usr/lib/libreadline.a
 >>> did you mean: cgetnum
 >>> defined in: /lib/libc.so.7

ld: error: undefined symbol: tgetent
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/terminal.c
 >>>               terminal.o:(_rl_init_terminal_io) in archive 
/usr/lib/libreadline.a

ld: error: undefined symbol: tputs
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/display.c
 >>>               display.o:(rl_redisplay) in archive 
/usr/lib/libreadline.a
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/display.c
 >>>               display.o:(rl_redisplay) in archive 
/usr/lib/libreadline.a
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/display.c
 >>>               display.o:(update_line) in archive /usr/lib/libreadline.a
 >>> referenced 27 more times

ld: error: undefined symbol: tgetstr
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/terminal.c
 >>>               terminal.o:(_rl_init_terminal_io) in archive 
/usr/lib/libreadline.a

ld: error: undefined symbol: tgoto
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/display.c
 >>>               display.o:(update_line) in archive /usr/lib/libreadline.a
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/display.c
 >>>               display.o:(update_line) in archive /usr/lib/libreadline.a

ld: error: undefined symbol: tgetflag
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/terminal.c
 >>>               terminal.o:(_rl_init_terminal_io) in archive 
/usr/lib/libreadline.a
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/terminal.c
 >>>               terminal.o:(_rl_init_terminal_io) in archive 
/usr/lib/libreadline.a
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/terminal.c
 >>>               terminal.o:(_rl_init_terminal_io) in archive 
/usr/lib/libreadline.a
 >>> referenced 1 more times

ld: error: undefined symbol: tgoto
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/display.c
 >>>               display.o:(update_line) in archive /usr/lib/libreadline.a
 >>> referenced by 
/usr/src/gnu/lib/libreadline/readline/../../../../contrib/libreadline/display.c
 >>>               display.o:(update_line) in archive /usr/lib/libreadline.a
cc: cc: error: linker command failed with exit code 1 (use -v to see 
invocation)error:
linker command failed with exit code 1 (use -v to see invocation)
gmake[2]: *** [Makefile:628: kadmin] Error 1
gmake[2]: *** Waiting for unfinished jobs....
gmake[2]: *** [Makefile:625: kadmin.local] Error 1
gmake[2]: Leaving directory 
'/usr/ports/security/krb5/work-default/krb5-1.22.2/src/kadmin/cli'
gmake[1]: *** [Makefile:832: all-recurse] Error 1
gmake[1]: Leaving directory 
'/usr/ports/security/krb5/work-default/krb5-1.22.2/src/kadmin'
gmake: *** [Makefile:1537: all-recurse] Error 1
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1

Stop.
make[1]: stopped making 
"/usr/ports/security/krb5/work-default/.build_done.krb5._usr_local" in 
/usr/ports/security/krb5
*** Error code 1

Stop.
make: stopped making "build" in /usr/ports/security/krb5

===>>> make build failed for security/krb5
===>>> Aborting update

===>>> Update for security/krb5 failed
===>>> Aborting update


===>>> You can restart from the point of failure with this command line:
        portmaster <flags> ftp/curl security/krb5



Would anyone be able to help?


Many thanks.


Kaya