Re: krb5 port fails to build in newly upgraded jails 14.4
Kaya Saman <[email protected]> Tue, 7 Jul 2026 21:24:31 +0100
| Newsgroups | gmane.os.freebsd.devel.ports |
|---|---|
| Message-ID | <[email protected]> |
On 7/7/26 9:00 PM, Mark Millard wrote: > On 7/7/26 12:34, Mark Millard wrote: >> On 7/7/26 12:09, Kaya Saman wrote: >>> On 7/7/26 7:39 PM, Mark Millard wrote: >>>> On 7/7/26 10:53, Kaya Saman wrote: >>>>> On 7/7/26 6:48 PM, Janky Jay, III wrote: >>>>>> Hello, >>>>>> >>>>>> On 7/7/26 11:28AM, Kaya Saman wrote: >>>>>>> Ah something seems to be hanging in the jail upgrade? >>>>>>> >>>>>>> >>>>>>> src component not installed, skipped >>>>>>> You have a partially completed upgrade pending >>>>>> If you're having issues with upgrading jails using freebsd-update, >>>>>> might I suggest maybe just switching to pkgbase and being done with >>>>>> all that old headache? >>>>>> >>>>>> There's a pretty good write-up on jail updating/upgrading from 14.x to >>>>>> 15.x here, if you're interested. Would likely save you a bunch of time >>>>>> as well if there are many jails: >>>>>> https://forums.freebsd.org/threads/jail-upgrade-from-14-3-release- >>>>>> to-15-0-release-with-pkgbase.101467/ >>>>>> >>>>>> Regards, >>>>>> Janky Jay, III >>>>>> >>>>>> >>>>> Thanks! >>>>> >>>>> >>>>> So far I think the jail has upgraded properly? I ran a freebsd-update -j >>>>> <name> -F fetch install >>>>> >>>>> >>>>> it's got the jail up to 14.4-p7 which is great >>>>> >>>>> >>>>> I still can't build krb5 as it's looking for the same libraries which >>>>> just don't exist. >>>> That means that you have other files around that are in use and contain >>>> references to the paths that start with /usr/src/gnu/lib/libdialog/ >>>> (and, possibly, more old paths). It might be old code compiled/linked >>>> long ago that recorded the source code paths. >>>> >>>> Your original message report indicated the following as containing such >>>> references: >>>> >>>> display.o:(rl_redisplay) in archive /usr/lib/libreadline.a >>>> terminal.o:(_rl_backspace) in archive /usr/lib/libreadline.a >>>> >>>> and those same .o file copies in the same .a file for other routines: >>>> >>>> _rl_get_screen_size >>>> _rl_init_terminal_io >>>> update_line >>>> >>>> I'll note that none of my fairly modern jail/chroot/boot systems has a >>>> /usr/lib/libreadline.a : it is another example of a file long gone (no >>>> longer produced from source that is also long gone). >>>> >>>> As I indicated earlier, you seem to need to do a very general cleanout >>>> of out of date materials that go back as far as 11.* (and possibly >>>> farther). >>>> >>>> Depending on what you know vs. do not know for making old vs. modern >>>> distinctions, that might involve simply starting over from scratch based >>>> on modern installation techniques. >>>> >>>>> I'm not sure where to begin debugging that? >>>>> >>>>> >>>>> Remove all ports and reinstall but I think result will be same? >>>>> >>>>> >>>>> >>> Hi Mark, >>> >>> >>> you're a legend! >>> >>> >>> I had a look within /usr/lib and sure there were 3x libreadline* files >>> in there. >>> >>> >>> Now I don't know if this is a permanent solution and if all old >>> libraries etc... have gone *but a very nice rm /usr/lib/libreadline* >>> followed by building the ports worked. >>> >>> >>> I remember there was an IDS approach to cross-compare old vs new files >>> and what's changed. I'm not sure if that still applies.... >>> >>> >>> Some of these jails might have been built during the 8.x era lol and >>> using the source "make buildworld DESTDIR=D" in /usr/src >>> >>> >>> Anyway, it's a fix for now :-) >> I should note that trying to use 14.4's: >> >> make delete-old-libs DESTDIR=. . . >> >> depends on if ObsoleteFiles.inc still contains: >> >> # 20140705: turn libreadline into an internal lib >> OLD_LIBS+=lib/libreadline.so.8 >> OLD_FILES+=usr/lib/libreadline.a >> . . . >> >> Looking . . . 14.4 does. 15.0 does not. >> >> That suggests that you may want to try make delete-old-libs DESTDIR=... >> But you may end up finding that other things are dependent on what >> should no longer exist and you may then end up having to reconstruct >> things based on the somewhat cleaned out context that resulted. > By the way, there are also: > > make check-old-libs DESTDIR=. . . > > for learning ahead of time what would be involved in the delete sequence. > > There is also a command for listing what is considered for the checking, > including what is not found to exist by the check-old-libs command: > > make list-old-libs DESTDIR=. . . > >> Based on the above, the identified old content goes back to 2014: over a >> decade. >> >>> >>> Regards, >>> >>> >>> Kaya >>> >>> >>> Many thanks.... I really appreciate this! where do I run the make command from? Is it from /usr/src? because I cleaned that out...