Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
None
-
5.12.1
-
None
Description
emscripten 1.38.26 removed 'fake' sse/simd support, which removed x86intrin.h file
Fixing the build by this patch:
diff --git a/src/corelib/tools/qsimd_p.h b/src/corelib/tools/qsimd_p.h
index c36e1e484f..9ec1f5c884 100644
— a/src/corelib/tools/qsimd_p.h
+++ b/src/corelib/tools/qsimd_p.h
@@ -191,7 +191,7 @@
- include <immintrin.h>
- endif
-
- if defined(Q_CC_GNU) && !defined(Q_CC_INTEL)
+# if defined(Q_CC_GNU) && !defined(Q_CC_INTEL) && !defined(Q_OS_WASM)
// GCC 4.4 and Clang 2.8 added a few more intrinsics there
- if defined(Q_CC_GNU) && !defined(Q_CC_INTEL)
- include <x86intrin.h>
- endif
results in an error where the qt app does not load, and shows:
Application exit(random_device)
But using a default shell html shell_minimal.html
QMAKE_LFLAGS += --shell-file ~/emsdk/emscripten/1.38.26/src/shell_minimal.html
Loads the app correctly.
So there are two issues:
- qsimd_p.h
- emscriptens library_fs.js
Attachments
For Gerrit Dashboard: QTBUG-73657 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
252328,4 | wasm: fix build with emsdk 1.38.26 | 5.13 | qt/qtbase | Status: MERGED | +2 | 0 |
280196,1 | wasm: fix build with emsdk 1.38.26 | 5.14 | qt/qtbase | Status: ABANDONED | 0 | 0 |