Opened 2 hours ago
Last modified 69 minutes ago
#71251 assigned defect
emscripten: address sanitizer and LTO builds do not work
Reported by: | CodingMarkus | Owned by: | MarcusCalhoun-Lopez (Marcus Calhoun-Lopez) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | ||
Port: | emscripten |
Description
Neither address sanitizer, nor LTO builds work with the emscripten version MacPorts provide.
When using an emsdk build, it's no problem to use either
-fsanitizer=address
or
-flto=thin
when creating an emscripten build.
But when I try the same thing with emscripten installed by MacPorts, I get
raceback (most recent call last): File "/opt/local/bin/emcc.py", line 1613, in <module> sys.exit(main(sys.argv)) File "/Applications/Xcode_16.0.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/contextlib.py", line 79, in inner return func(*args, **kwds) File "/opt/local/bin/emcc.py", line 1606, in main ret = run(args) File "/opt/local/bin/emcc.py", line 662, in run return link.run(linker_inputs, options, state, newargs) File "/opt/local/libexec/emscripten/tools/link.py", line 3065, in run phase_calculate_system_libraries(linker_arguments, newargs) File "/Applications/Xcode_16.0.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/contextlib.py", line 79, in inner return func(*args, **kwds) File "/opt/local/libexec/emscripten/tools/link.py", line 1834, in phase_calculate_system_libraries extra_files_to_link += system_libs.calculate(newargs) File "/opt/local/libexec/emscripten/tools/system_libs.py", line 2409, in calculate libs_to_link = get_libs_to_link(args) File "/opt/local/libexec/emscripten/tools/system_libs.py", line 2364, in get_libs_to_link add_library('libc') File "/opt/local/libexec/emscripten/tools/system_libs.py", line 2279, in add_library libs_to_link.append((lib.get_link_flag(), need_whole_archive)) File "/opt/local/libexec/emscripten/tools/system_libs.py", line 443, in get_link_flag fullpath = self.build() File "/opt/local/libexec/emscripten/tools/system_libs.py", line 430, in build return cache.get(self.get_path(), self.do_build, force=USE_NINJA == 2, quiet=USE_NINJA) File "/opt/local/libexec/emscripten/tools/cache.py", line 155, in get raise Exception(f'FROZEN_CACHE is set, but cache file is missing: "{shortname}" (in cache root path "{cachedir}")') Exception: FROZEN_CACHE is set, but cache file is missing: "sysroot/lib/wasm32-emscripten/libc-asan-debug.a" (in cache root path "/opt/local/libexec/emscripten/cache")
Change History (1)
comment:1 Changed 69 minutes ago by reneeotten (Renee Otten)
Owner: | set to MarcusCalhoun-Lopez |
---|---|
Status: | new → assigned |
Summary: | Neither address sanitizer, nor LTO builds work with emscripten → emscripten: address sanitizer and LTO builds do not work |
Note: See
TracTickets for help on using
tickets.