Red Hat 8.10 uses glibc 2.28, which means application built on latest version such as Red Hat 9/10 won't be able to run on Redhat 8.10.
I'm curious how Red Hat solves this problem. I guess the applications for Red Hat 8.10 are all built on Red Hat 8.10 to keep the exactly same glibc version and libstdc++?
Hello @zechen ! I took help from one of the senior devs in our curriculum team and he replied with this :
"This is a problem specifically only if you the customer app is written in C or C++. The solution is pretty straightforward - containers! Use UBI8 as base and build a container for the native app and then run it on RHEL 9/10 or whatever distro is there.
Because glibc is used not only by userland customer apps, but also other OS components glibc compat between major OS versions is tricky and fraught with issues. It all depends on which glibc functions are used plus there are other dependencies at runtime depending on the app.
safest bet - containerize.
alternate options - AppImage or Flatpak - ugly and hacky and a pain to maintain.
Some languages like Go, bypass glibc bindings and you can statically compile a binary and run it on multiple OS's- but this depends upon customer needs."
Hello @zechen ! I took help from one of the senior devs in our curriculum team and he replied with this :
"This is a problem specifically only if you the customer app is written in C or C++. The solution is pretty straightforward - containers! Use UBI8 as base and build a container for the native app and then run it on RHEL 9/10 or whatever distro is there.
Because glibc is used not only by userland customer apps, but also other OS components glibc compat between major OS versions is tricky and fraught with issues. It all depends on which glibc functions are used plus there are other dependencies at runtime depending on the app.
safest bet - containerize.
alternate options - AppImage or Flatpak - ugly and hacky and a pain to maintain.
Some languages like Go, bypass glibc bindings and you can statically compile a binary and run it on multiple OS's- but this depends upon customer needs."
Red Hat
Learning Community
A collaborative learning environment, enabling open source skill development.