wasix-org/cargo-wasix

GLIBC_2.36 not found

Closed this issue · 12 comments

Running cargo wasix build produces the following output:

$ cargo wasix build
/home/ben/.rustup/toolchains/wasix/bin/rustc: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.36' not found (required by /home/ben/.rustup/toolchains/wasix/lib/librustc_driver-239bacfa42cce6c3.so)
error: Could not execute rustc

Caused by:
    failed to execute "rustc" "+wasix" "--print" "sysroot"
        status: exit status: 1

My currently installed version of glibc is 2.35.

Will wasix support glibc version 2.35 or will people need to update their glibc version to run wasix?

This is a bit problematic, what distro/release are you on?

The toolchain is currently built on the ubuntu-latest Github runner, whis is Ubuntu 22.04.

We could theoretically build on an older distro with an older libc to increase compatibility.

I'm running Linux Mint 21.1.

Increasing compatibility definitely seems like a good idea long term, as lots of OS still use glibc 2.35.

However, maybe the best thing short term would be to add instructions for running in Docker (like discussed in #12) to the readme? That way people can start using this regardless of any system specific anomalies.

@theduke

This is a bit problematic, what distro/release are you on?

The toolchain is currently built on the ubuntu-latest Github runner, whis is Ubuntu 22.04.

We could theoretically build on an older distro with an older libc to increase compatibility.

I believe this assertion may be somewhat incorrect.
I'm also using Ubuntu 22.04 on my desktop, and I encounter the same failure due to the 'GLIBC_2.36' not found error.

❯ cat /etc/os-release 
PRETTY_NAME="Ubuntu 22.04.2 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.2 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy

❯ rustup run wasix rustc --version
/home/nash1111/.rustup/toolchains/wasix/bin/rustc: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.36' not found (required by /home/nash1111/.rustup/toolchains/wasix/lib/librustc_driver-239bacfa42cce6c3.so)

I executed sudp apt update && sudo apt install glibc-source -y , but it seems that 2.35 is the latest version of glibc available in Ubuntu 22.04.

Furthermore, the GitHub Actions log shows a failure for the same reason.

https://github.com/wasix-org/cargo-wasix/actions/runs/5202158887/jobs/9383362607#step:4:353

I'm speculating, but might it be possible that there are two GitHub Actions jobs, for linting and testing, and only the success of the linting job was taken into consideration for the release? I hope this remark will be helpful for you.

Easiest way to fix this problem is to update your WSL distro to ubuntu 22.10 to get glibc 2.36
Increasing compability can be great

We will publish a new release with an older libc soon, but probably only on Friday.

This is exciting to hear because when I found out about this today while watching theprimagen's youtube, I wanted to try it out immediately and now I'm sad I have to wait. But I will be patient.

To clarify for those of us new to this: When the newer version with the older glibc is released, are we talking about the cargo-wasix tool for rust needing to be updated or the underlying toolchain in ~/.local/share/cargo-wasix/toolchains?

I have got the same issue, and do waiting for the update to 22.35 as well.

Same error in debian

FYI: we will be publishing a new release of WASIX in the today or tomorrow, which should fix this issue.

(sorry it took so long)

FYI: we will be publishing a new release of WASIX in the today or tomorrow, which should fix this issue.

(sorry it took so long)

Thank you for the hard work. We're all looking forward to using this tool. I might only be speaking for myself, but I'm excited ya'll took time to make it right, but didn't just ignore us all. Thank you!

A new WASIX release was published, which was built on Ubuntu 22.04 , and so should support older libcs again.

You can run cargo wasix download-toolchain to upgrade.