-
Notifications
You must be signed in to change notification settings - Fork 215
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Linux native binary no longer works on ubuntu 18.04 and ubuntu 20.04 (and likely any linux with glibc < 2.34) #812
Comments
Note that this is only for the early access builds, as the release workflow is still referencing Not sure about which glibc version we should support. What would be the requirement if we build on ubuntu 20.04 ? @gzm55 any thoughts ? |
Yeah, that's my bad. I should have updated both locations. I just tried building on ubuntu:20.04 and that seems to bring back the support for both 18.04 and 20.04, so I would go with that for now (see the linked PR). |
* building on ubuntu:22.04 produces binaries which require too recent glibc version (2.32+) and that means the binary no longer works on older ubuntu versions, like 20.04 and 18.04. * building on ubuntu:20.04 fixes the problem and the binary again works on ubuntu 18.04 and 20.04 * also bumped the version in the release workflow which got forgotten
not only ubuntu, the native binaries may also run on centos 6/7. if we cannot keep lower glibc requirements (like JDK), we would have to release for each OS major version. glibc contains all version of its api. To avoid linking to high version glibc api, we should find the api requiring higher glibc, and append the lower name to |
* building on ubuntu:22.04 produces binaries which require too recent glibc version (2.32+) and that means the binary no longer works on older ubuntu versions, like 20.04 and 18.04. * building on ubuntu:20.04 fixes the problem and the binary again works on ubuntu 18.04 and 20.04 * also bumped the version in the release workflow which got forgotten
* building on ubuntu:22.04 produces binaries which require too recent glibc version (2.32+) and that means the binary no longer works on older ubuntu versions, like 20.04 and 18.04. * building on ubuntu:20.04 fixes the problem and the binary again works on ubuntu 18.04 and 20.04 * also bumped the version in the release workflow which got forgotten
As part of #801 I upgraded the ubuntu build image from
ubuntu:18.04 to ubuntu:22.04
, mainly because GitHub is removing the support for that old ubuntu image. With that I also inadvertently bumped the minimum requirement for the Glibc the native binary needs, which now seems to be2.34
.Then I noticed the patch for Graal in the build script:
The patch suggests that
mvnd
should support glibc 2.12, which is no longer the case.This the output I get when running on ubuntu 18.04 and ubuntu 20.04, with latest binaries from master:
Now, I am not sure about the intended supportability for different glibc versions. Ubuntu 18.04 is already pretty old and according to https://wiki.ubuntu.com/Releases, the end of standard support is like a month away. So maybe that one could be dropped? But then it seems like
mvnd
should still support at least ubuntu 20.04, which will be supported for another two years.The text was updated successfully, but these errors were encountered: