runner-images
runner-images copied to clipboard
ubuntu-latest is missing libc dependencies for cross compiling
Description
We are using a GitHub action to build our lambda go functions. Our Go functions require C libraries CGO_ENABLED=1
however the libraries are missing in Ubuntu 22.04.1
runner. This was working with the Ubuntu 20.04.05
runner.
Specific errors we are getting are:
/var/task/bootstrap: /lib64/libc.so.6: version `GLIBC_2.33' not found (required by /var/task/bootstrap)
/var/task/bootstrap: /lib64/libc.so.6: version `GLIBC_2.32' not found (required by /var/task/bootstrap)
/var/task/bootstrap: /lib64/libc.so.6: version `GLIBC_2.34' not found (required by /var/task/bootstrap)
Platforms affected
- [ ] Azure DevOps
- [X] GitHub Actions - Standard Runners
- [ ] GitHub Actions - Larger Runners
Runner images affected
- [ ] Ubuntu 18.04
- [ ] Ubuntu 20.04
- [X] Ubuntu 22.04
- [ ] macOS 10.15
- [ ] macOS 11
- [ ] macOS 12
- [ ] Windows Server 2019
- [ ] Windows Server 2022
Image version and build link
Current runner version: '2.299.1' Operating System Ubuntu 22.04.1 LTS Runner Image Image: ubuntu-22.04 Version: 20221119.2 Included Software: https://github.com/actions/runner-images/blob/ubuntu22/20221119.2/images/linux/Ubuntu2204-Readme.md Image Release: https://github.com/actions/runner-images/releases/tag/ubuntu22%2F20221119.2 Runner Image Provisioner 2.0.91.1
Is it regression?
https://github.com/actions/runner-images/releases/tag/ubuntu20%2F20221027.1
Expected behavior
Expect aws go lambdas to be built with the required libc libraries.
Actual behavior
Aws go lambdas are missing the required libc libraries.
Repro steps
We're using AWS CDK so don't have simple to-reproduce steps. Let me know if you need them
Happy to provide more info if needed or do some further troubleshooting
Hello @chrichts, could you please provide minimal repro steps? Thank you!
@chrichts also found this workaround, maybe it can be of some help.
@chrichts It looks like version of your build requires glibc version older than ubuntu-22.04 is actually providing. In 22.04 the version is 2.35 (and we do not provide any alternative toolchain installed), so the easiest solution here is to explicitly specify ubuntu-20.04 I think. In anyway, there is nothing we can do on our side.
If you have questions left feel free to reach us out again :)