Alpine 3.19 error "Error relocating /usr/lib/ statx: symbol not found"

Hi, noticed my Alpine docker builds started failing a week or two ago:

mkvmerge --version
Error relocating /usr/lib/ statx: symbol not found

I normally install from 3.19, also tried from edge, same problem.
I understand that the builds are maintained by a 3rd party (Francesco Colista), but maybe somebody knows a workaround, or knows how to contact the maintainer?

Failing build example: Build and push docker images · ptr727/PlexCleaner@8685e6b · GitHub

Alpine 3.19 package is on v81: Alpine Linux packages
Alpine edge package is on v83: Alpine Linux packages

Dockerfile: PlexCleaner/Docker/Alpine.dotNET.Dockerfile at main · ptr727/PlexCleaner · GitHub

Any ideas?

You really should report that problem with the projects that provide you the pre-built binaries, meaning the project that maintains the Docker image and/or Alpine. We cannot help you here, at all.

I understand your position, on the other hand, it is not like Alpine is a fringe distribution, so maybe you could care a little about your tooling being installed from the Alpine community repos on the Microsoft Alpine distro?

Or maybe somebody can help guide me on how to report problems with the tooling to “Francesco Colista” the maintainer, I may be missing something but I can’t quite figure out how to report issues with Alpine community packages?

I don’t use Alpine, I’m not a packager for Alpine, I don’t offer binaries for Alpine, and I’m not the maintainer of said Docker images. Therefore I don’t really see how you expect any type of support from me here.

I definitely offer support for the binaries I do provide, but again, those don’t include Alpine.

The bug tracker for the project of said Dockerfile you’ve linked to is here.

In general it sounds like you’re trying to use a package from a newer version of Alpine on an older version of Alpine. This will almost never work properly, which is true not just for Alpine but for most other Linux distros, too.

I am the maintainer of the dockerfile you mention, I came here for help, and I am using a 3.19 package on 3.19, I will look for Alpine help elsewhere.

Ah, sorry, I didn’t grasp that from your posts.

Nevertheless, I don’t know anything about how Alpine packaging works. This includes knowing what “using a package from edge” vs “using a package from a numbered version” means, what the consequences are, if there can be differences in which library versions they were compiled with etc. Therefore I can only give the general advice that I already gave.

If packages from “edge” are supposed to be usable in a “numbered version” Alpine installation, then your case not working would suggest it’s a bug that happened during packaging. But again, I don’t know if that’s supposed to work or not.

It’s not that I don’t want to help you; it’s that I cannot effectively help you due to lack of domain-specific knowledge.

FYI, I reported the issue with Alpine, I can repro it with the vanilla Alpine image.

That’s an interesting read. Thanks.

I have experienced similar issues with mediainfo where mediainfo uses c++ zenlib that is dynamically linked and then breaks when runtimes are inadvertently mixed by some other package.

Linking statically could minimize exposure to dynamic library mismatches, but obviously has downsides in e.g. size.

Out of interest, Qt is UI right, why would mkvmerge a CLI load a Qt lib?

Qt consists of a lot of libraries that span a wide range of topics, among them UI, sure, but also networking stuff, image processing, regular expressions etc. The CLI tools use those other parts of Qt.