-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Build
-
Fully Compatible
-
ALL
Currently Bazel fails to execute on Amazon Linux because the hermetic gcc is linked with glibc version 2.34, but the system version is 2.26. glibc is backwards compatible, but not forwards compatible.
A possible solution is building and bundling our own libc with all dynamically loaded dependencies, but this is a pretty big initiative. See https://crosstool-ng.github.io/ for something we could utilize to do this for us.
The other solution is to build gcc with an earlier version of glibc. Since it's backwards compatible, gcc will then be runnable on systems with newer versions of glibc. One drawback to this is that we would potentially lose out on new ABI breaking features in glibc that may improve compilation speed. We also may be forced to upgrade to a newer version of glibc if a newer gcc requires it. This however should not affect the resulting binaries built (they should be bitwise identical regardless of glibc version).