Skip to content

Commit 3009116

Browse files
authored
Add patch_libstdc.sh step to x86_64 Dockerfile (#7982)
## Summary - Add the patch_libstdc.sh CXX11 ABI symbol workaround to docker/Dockerfile (x86_64), aligning it with Dockerfile.aarch64 and the upstream pytorch/pytorch https://github.com/pytorch/pytorch/blob/main/.ci/docker/manywheel/Dockerfile_2_28#L119 - This was already applied for aarch64 but missing from x86_64 ## Context - See pytorch/pytorch#133437 for details on the libstdc++ CXX11 ABI symbol issue this patch addresses. - See recent error: https://github.com/pytorch/pytorch/actions/runs/24487334106/job/71580575973#step:7:171 ``` RuntimeError: Found statically linked libstdc++ symbols (recursive_directory_iterator): ['std::filesystem::__cxx11::recursive_directory_iterator::recursion_pending() const', 'std::filesystem::__cxx11::recursive_directory_iterator::depth() const', 'std::filesystem::__cxx11::recursive_directory_iterator::options() const', 'std::filesystem::__cxx11::recursive_directory_iterator::operator*() const', 'std::filesystem::__cxx11::recursive_directory_iterator::disable_recursion_pending()', 'std::filesystem::__cxx11::recursive_directory_iterator::pop(std::error_code&)', 'std::filesystem::__cxx11::recursive_directory_iterator::pop()', 'std::filesystem::__cxx11::recursive_directory_iterator::increment(std::error_code&)', 'std::filesystem::__cxx11::recursive_directory_iterator::operator=(std::filesystem::__cxx11::recursive_directory_iterator&&)', 'std::filesystem::__cxx11::recursive_directory_iterator::operator=(std::filesystem::__cxx11::recursive_directory_iterator const&)', 'std::filesystem::__cxx11::recursive_directory_iterator::recursive_directory_iterator(std::filesystem::__cxx11::path const&, std::filesystem::directory_options, std::error_code*)', 'std::filesystem::__cxx11::recursive_directory_iterator::recursive_directory_iterator(std::filesystem::__cxx11::path const&, std::filesystem::directory_options, std::error_code*)', 'std::filesystem::__cxx11::recursive_directory_iterator::~recursive_directory_iterator()', 'std::filesystem::__cxx11::recursive_directory_iterator::~recursive_directory_iterator()', 'std::filesystem::__cxx11::recursive_directory_iterator::operator++()'] ``` ## Test plan - Build the x86_64 Docker image and verify patch_libstdc.sh runs successfully - Confirm CXX11 ABI symbols are correctly patched in the resulting image
1 parent 5cfcf2f commit 3009116

1 file changed

Lines changed: 5 additions & 0 deletions

File tree

docker/Dockerfile

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,11 @@ RUN --mount=type=bind,source=install_cuda.py,target=/tmp/install_cuda.py \
9292
uv run /tmp/install_cuda.py; \
9393
fi
9494

95+
# Patch libstdc++ for CXX11 ABI symbol workaround
96+
# See: https://github.com/pytorch/pytorch/issues/133437
97+
RUN --mount=type=bind,source=patch_libstdc.sh,target=/tmp/patch_libstdc.sh \
98+
bash /tmp/patch_libstdc.sh
99+
95100
# Install sccache (do this last so /opt/cache/bin gets PATH priority)
96101
RUN --mount=type=bind,source=install_cache.py,target=/tmp/install_cache.py \
97102
uv run /tmp/install_cache.py

0 commit comments

Comments
 (0)