-
Notifications
You must be signed in to change notification settings - Fork 684
Description
🐛 Describe the bug
ARM Linux CI jobs are failing on the release/1.0 branch when using prebuilt PyTorch + domain packages. This appears to be due to the PyTorch packages requiring glibcxx 3.4.30. The existing ARM Linux images we use have 3.4.29.
This is a known problem with Conda on Ubuntu 22.04 (see pytorch/pytorch#105248) and there is a workaround in install_conda.sh:
executorch/.ci/docker/common/install_conda.sh
Lines 59 to 62 in 181ed4d
# WARNING: This is a HACK from PyTorch core to be able to build PyTorch on 22.04. | |
# Specifically, ubuntu-20+ all comes lib libstdc++ newer than 3.30+, but anaconda | |
# is stuck with 3.29. So, remove libstdc++6.so.3.29 as installed by | |
# https://anaconda.org/anaconda/libstdcxx-ng/files?version=11.2.0 |
However, this workaround is not used on ARM Linux because it apparently breaks the CI jobs (introduced in #12068):
executorch/.ci/docker/common/install_conda.sh
Lines 74 to 78 in 181ed4d
# Hack breaks the job on aarch64 but is still necessary everywhere | |
# else. | |
if [ "$(uname -m)" != "aarch64" ]; then | |
fix_conda_ubuntu_libstdcxx | |
fi |
ImportError: /opt/conda/envs/py_3.10/bin/../lib/libstdc++.so.6: version `GLIBCXX_3.4.30' not found (required by /opt/conda/envs/py_3.10/lib/python3.10/site-packages/executorch/extension/pybindings/_portable_lib.cpython-310-aarch64-linux-gnu.so)
From https://github.com/pytorch/executorch/actions/runs/18111201043/job/51550387476
We need to figure out what the proper fix is, perhaps updating the libcxx version in the docker image build or somewhere else? As a short-term fix, I'm installing a newer version with Conda in #14677.
Versions
release/1.0 - commit 3854f4b