Luming Wang has uploaded this change for review. (
https://gem5-review.googlesource.com/c/public/gem5/+/70818?usp=email )
Change subject: scons: fix build failed caused by Non-ASCII directory path
......................................................................
scons: fix build failed caused by Non-ASCII directory path
This patch addresses the issue of gem5 failing to build when
the build directory path contains non-ASCII characters.
The previous patches[1] that attempted to fix this issue
became ineffective after the upgrade of Python and pybind11
to new versions. This new patch manually sets the locale in
marshal.py based on the `LC_CTYPE` environment variable,
providing a comprehensive solution that works with Non-ASCII
build directory paths.
[1] https://gem5-review.googlesource.com/c/public/gem5/+/58369
Change-Id: I3ad28b6ee52fd347d2fe71f279baab629e88d12c
---
M build_tools/marshal.py
M site_scons/gem5_scons/defaults.py
2 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/build_tools/marshal.py b/build_tools/marshal.py
index 18afe2c..e93921b 100644
--- a/build_tools/marshal.py
+++ b/build_tools/marshal.py
@@ -48,6 +48,7 @@
this script, and to read in and execute the marshalled code later.
"""
+import locale
import marshal
import sys
import zlib
@@ -65,6 +66,11 @@
print(f"Usage: {sys.argv[0]} CPP PY MODPATH ABSPATH", file=sys.stderr)
sys.exit(1)
+# Set the Python's locale settings manually based on the `LANG`
+# environment variable
+if 'LC_CTYPE' in os.environ:
+ locale.setlocale(locale.LC_CTYPE, os.environ["LC_CTYPE"])
+
_, cpp, python, modpath, abspath = sys.argv
with open(python, "r") as f:
diff --git a/site_scons/gem5_scons/defaults.py
b/site_scons/gem5_scons/defaults.py
index a07b7ff..996cfd4 100644
--- a/site_scons/gem5_scons/defaults.py
+++ b/site_scons/gem5_scons/defaults.py
@@ -66,6 +66,7 @@
"GEM5PY_LINKFLAGS_EXTRA",
"LINKFLAGS_EXTRA",
"LANG",
+ "LC_CTYPE",
]
)
--
To view, visit
https://gem5-review.googlesource.com/c/public/gem5/+/70818?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gem5-review.googlesource.com/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: I3ad28b6ee52fd347d2fe71f279baab629e88d12c
Gerrit-Change-Number: 70818
Gerrit-PatchSet: 1
Gerrit-Owner: Luming Wang <wlm199...@126.com>
_______________________________________________
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org