Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 17 Feb 2025 23:43:26 +0000
From:      Frank Leonhardt <freebsd-doc@fjl.co.uk>
To:        freebsd-questions@freebsd.org
Subject:   Re: Stuff Not Working after Upgrade - Missing Dependency
Message-ID:  <03ebd49d-9485-440a-b32d-a90a28b10d1a@fjl.co.uk>
In-Reply-To: <20250217180704473755.3964cde2@vjs.org>
References:  <20250217180704473755.3964cde2@vjs.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 17/02/2025 23:07, Vincent Sabio wrote:
> Hi folks,
>
> I just upgraded my server from 12.0-REL to 14.1-REL (yeah, I know) 
> (I'm still running CentOS, too), and now PHP refuses to run. Typing 
> php at the command line gives me:
>
> ld-elf.so.1: Shared object "libdl.so.1" not found, required by 
> "libxml2.so.2"
>
> But this goes way beyond just php -- I get the same thing with dig, 
> when trying to start named, etc.
>
> I've been pulling my hair out, trying updates and downgrades and 
> side-parries and allkindsashit and I can't figure out how to fix this.
>
> Any help appreciated -- thanks!
>
> (Also didn't know which is the correct list for this issue, so figured 
> I'd start here.)
>
>
> - V

This list is as good as any.

I had hell when I went from 12 to 14 (via 13) on a workshop machine (my 
gateway), so I just don't do it on anything "production". I spent six 
months on and off, fiddling with it to try and see if there was some 
cure by hand-fixing dependencies. At the weekend I gave up, flattened it 
and installed everything from scratch.

The problem with the shared objects is some of the packages don't 
appreciate having the upgraded versions, so basically you've got to 
upgrade (or reinstall) all the packages too - assuming you're using 
packages. This is easier said than done, and inevitably you'll find a 
package that doesn't have an upgrade anyway. I'm sure there's someone 
hereabouts that'll have the binary upgrades working fine, but IME they 
work between minor versions, and between one major version and the next, 
but not across two major versions - and that includes if you upgrade to 
the intermediate major version first. This is just my rule-of-thumb.

One approach that does work for me is to run the old environment in a 
jail on the newer OS, and that's what I do now instead of trying an 
in-place upgrade. Of course you can only do this if you have a backup of 
the original. I always run "zfs snap -r" before an upgrade ;-)

Good luck!





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?03ebd49d-9485-440a-b32d-a90a28b10d1a>