At Mon, 09 Feb 2026 09:09:18 -0500 The Wanderer <[email protected]> wrote:
> > If an older program version (no longer shipped in Debian) segfaults with > an updated version of a library package (with the same SONAME, etc.), > but continues to work fine with an older version of that library, is > that considered a bug in the new version of the library package? Shared libraries should be versioned and programs should specify the version they have been linked with. > > I have a case of that happening, with a program that matters quite a lot > to me, and I'm trying to assess whether it would be potentially worth > the trouble for me to report the segfault as a bug against the library > package involved, vs. focusing my effort on trying to find ways to work > around the problem. It is not actually a bug, assuming that the library is using proper versioning. OTOH, if the program is NOT properly specifying the library version it expect to use, then that is a bug in the *program*. (If you are playing games with symlinks to fake things, that is on you.) > > That's partly a matter of principle (if libraries break backward > compatibility, shouldn't they have to change SONAME or similar?), partly > a matter of maintainer opinions/attitudes (how open is the maintainer to > problems with applications and versions not shipped in Debian?), and > partly a matter of how practical it would or wouldn't be to get it fixed > (with no debug symbols in the program, there might not be any useful way > to diagnose the problem, even if it *is* with the library proper). They change the version numbers. And programs should code the expected version numbers at link time. > > > The library at hand is libfontconfig1. The program at hand (which I > still run as an older version intentionally) is Icedove, Debian's former > rebranded variant of Mozilla Thunderbird. The question being asked is > *NOT* about Icedove/Thunderbird or libfontconfig1 specifically, > however; it is about the more general considerations outlined above. > > I recently had to restart my computer due to a power outage. After the > boot-up, Icedove involved failed to launch. Running it from a terminal > showed that it segfaults. Running it under gdb showed that the segfault > is inside a function call from libfontconfig1; as this build of Icedove > does not have debug information available, I don't have any ready way to > take it any further than that (although see below). > > That was with libfontconfig1 installed at version 2.17.1-3, from current > testing. With some difficulty (because of version-match requirements > among various other library packages), I downgraded libfontconfig1 to > version 2.15.0-2.3 (from current stable); after that, the program again > launched without issues. OK, if you are using *unstable* versions (eg "testing") you can expect problems and should then report them. This *sounds* like such a case. > > I can very probably reproduce the issue on demand by upgrading the > library packages again, but I am hesitant to do so without a specific > intention in mind, because downgrading again could be a pain (and if I > don't successfully downgrade, I lose E-mail access until such time as I > can find a solution by other means). You could create a VM just for testing this issue... > > > ...While writing the above it occurred to me that if I install the > -dbgsym package for libfontconfig1 (and any other library packages that > turn out to be in the call chain), I might be able to get a more useful > stack trace out of gdb. If I do get to the point of reproducing the > issue, that may very well be worth the attempt. > -- Robert Heller -- Cell: 413-658-7953 GV: 978-633-5364 Deepwoods Software -- Custom Software Services http://www.deepsoft.com/ -- Linux Administration Services [email protected] -- Webhosting Services

