Short version: it *is* local to me, related to a timing issue in the
rebuilds of one of the libraries in the dependency chain which I build
locally. I've fixed that on my end for this occurrence, and will
hopefully be more aware of it if it occurs again. Sorry for the noise.


On 2025-08-14 at 04:44, Andreas Rönnquist wrote:

> I'm kind of more interested in where you got libx265-209 from, 
> since it doesn't look like it comes from the Debian package. If it 
> does, updating a trixie should probably give you lib265-215.
> 
> What does sudo "apt show libx265-209" give?

I don't use the apt binary itself if I have a choice in the matter, but
for a hopefully-equivalent command:

$ apt-cache show libx265-209
N: Unable to locate package libx265-209
E: No packages found

And likewise:

$ apt-cache policy libx265-209
N: Unable to locate package libx265-209

However:

$ ls -l /var/cache/apt/archives/libx265-209_3.6-3*
-rw-r--r-- 1 root root 1180556 Jun  8  2024
/var/cache/apt/archives/libx265-209_3.6-3_amd64.deb
-rw-r--r-- 1 root root 1191168 Oct 29  2024
/var/cache/apt/archives/libx265-209_3.6-3+b1_amd64.deb
-rw-r--r-- 1 root root  715776 Oct 29  2024
/var/cache/apt/archives/libx265-209_3.6-3+b1_i386.deb
-rw-r--r-- 1 root root  713268 Jun  8  2024
/var/cache/apt/archives/libx265-209_3.6-3_i386.deb

In other words, I do not have libx265-209 installed at all, but I did
have it previously. My understanding is that I would have gotten it from
the Debian repositories during the period when it was available (the
SONAME change from 209 to 215 happened in experimental and then in
unstable during January of this year, though I don't know when I
received the resulting package via testing).

I do not track releases by codename; I track stable+testing by those
names, and dist-upgrade against testing frequently during the period
between stable releases.


I do, however, think that I've tracked down the problem (thanks in part
to inspiration while sleeping over the night). It *is* local to me, and
not geeqie-specific, but not in a way I would have expected to occur.
This bug can be closed, but I want to explain the cause for potential
reference.

While I do not build geeqie locally, I *do* build FFmpeg - and therefore
its libav* libraries - locally.

As a result of that, I have locally-built copies of both libavcodec61
(which is also installed from the Debian repositories) and libavcodec62
(which is not).

The repository-built copy of libavcodec61 is built against x265-215. The
locally-built one is built against x265-209.

Normally, this would be fixed without my noticing it, because either I
would rebuild my local libav* with the same SONAME against the newer
libx265 (thereby replacing the one that references the older version),
or the Debian-packaged libav* would be updated to a new SONAME (and
therefore the Debian-provided binaries from other packages would be
rebuilt to reference that) and that would naturally be built against the
newer libx265.

In this case, however, apparently I rebuilt my local libav* against the
newer libx265 after FFmpeg bumped libavcodec to a new SONAME (so the old
copy wasn't replaced/updated), but the Debian packaging of FFmpeg has
not reached the point of letting that new SONAME into a repository that
I track.

So Debian-provided binaries are still being built against the older
SONAME of libavcodec, and ld on my system is matching that against my
locally-built copy of libavcodec.so.61, which still references the older
SONAME of libx265, which isn't available anymore. geeqie just happened
to be the first such binary that I tried to run after the removal of the
older libx265 package.


I see two ways to fix this. One would be to reinstall libx265-209 from
snapshot.debian.org, and just let it live on my system indefinitely; the
other would be to remove the locally-built copy of the older libavcodec,
or at least the symlink that lets it be found by ld in this context, and
let programs looking for that SONAME of libavcodec find it from the
Debian package. (If they break when the Debian package get removed,
well, they'd be broken anyway because of this same broken reference.)

I have now removed the symlink, and with that gone, geeqie launches
again without issues. I'll have to keep an eye out in case something
else breaks because of this, but I do not currently expect that to happen.

I apologize for the noise, and I thank you for the opportunity to expand
my understanding of how things work (and how to troubleshoot them) in
this space.

-- 
  Andrew J. Buehler

Reply via email to