From f22b2d38b1ead2fb75e236aba002408f6914568f Mon Sep 17 00:00:00 2001 From: Xeonacid Date: Mon, 22 Dec 2025 08:23:11 +0100 Subject: [PATCH 1/2] build_attach_binaries: support other arch on linux --- build_attach_binaries.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/build_attach_binaries.py b/build_attach_binaries.py index 317f0798..98d1887e 100644 --- a/build_attach_binaries.py +++ b/build_attach_binaries.py @@ -2,6 +2,7 @@ import argparse import os import platform +import re def build_pydevd_binaries(force: bool): os.environ["PYDEVD_USE_CYTHON"] = "yes" @@ -25,7 +26,12 @@ def build_pydevd_binaries(force: bool): if not os.path.exists(os.path.join(pydevd_attach_to_process_root, "attach_amd64.dll")) or force: os.system(os.path.join(pydevd_attach_to_process_root, "windows", "compile_windows.bat")) elif platform.system() == "Linux": - if not os.path.exists(os.path.join(pydevd_attach_to_process_root, "attach_linux_amd64.so")) or force: + arch = platform.machine() + if re.match(r'^i.*86$', arch): + arch = 'x86' + if arch == "x86_64": + arch = "amd64" + if not os.path.exists(os.path.join(pydevd_attach_to_process_root, f"attach_linux_{arch}.so")) or force: os.system(os.path.join(pydevd_attach_to_process_root, "linux_and_mac", "compile_linux.sh")) elif platform.system() == "Darwin": if not os.path.exists(os.path.join(pydevd_attach_to_process_root, "attach.dylib")) or force: From 3abf4c82f7146135c4817ff298c194d1b186da84 Mon Sep 17 00:00:00 2001 From: Xeonacid Date: Mon, 22 Dec 2025 08:25:24 +0100 Subject: [PATCH 2/2] compile_linux: warn instead of quit for unsupported arch --- .../pydevd_attach_to_process/linux_and_mac/compile_linux.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/linux_and_mac/compile_linux.sh b/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/linux_and_mac/compile_linux.sh index 97cab104..081ec120 100755 --- a/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/linux_and_mac/compile_linux.sh +++ b/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/linux_and_mac/compile_linux.sh @@ -4,7 +4,7 @@ ARCH="$(uname -m)" case $ARCH in i*86) SUFFIX=x86;; x86_64*) SUFFIX=amd64;; - *) echo >&2 "unsupported: $ARCH"; exit 1;; + *) echo >&2 "unsupported: $ARCH, this script may not work";; esac SRC="$(dirname "$0")/.."