Wenn ich ein einfaches Programm in C ++ mit Clang zusammenstelle (tatsächlich verwende ich Zick C ++, aber das verwendet Clang), kompile ich ein WASM -Programm, das 700 KB: < /p>
istzig c++ ./WebAssemblyCompilationTesting.cpp -o myoutput.wasm --target=wasm32-wasi -Wl,--no-entry -flto=thin -O3
< /code>
und ich inspiziere die WASM -Dateiabschnitte und ich erhalte: < /p>
.debug_loc
243 KiB
.debug_abbrev
23.7 KiB
.debug_info
231.5 KiB
.debug_str
46.6 KiB
.debug_line
180.9 KiB
.debug_pubnames
14.4 KiB
.debug_pubtypes
3.7 KiB
.debug_ranges
19.8 KiB
name
233 B
producers
148 B
target_features
148 B
< /code>
Ich kann nur die Dateigröße abrufen und die Debug -Abschnitte aus der Datei entfernen, die das Flag -OS -Flag verwenden, wodurch die Größe von 700 KB auf 300 Bytes fallen. Aber -0S ist ein Optimierungsflag, das -O3 überschreibt. Ich möchte die Debug -Informationen entfernen und die Optimierung -o2 oder -o3 behalten. Gibt es eine Möglichkeit, die Debug -Informationen mit -O2 oder -O3 zu entfernen? Es scheint nicht möglich zu sein.
Wie kann ich in Clang Debug -Informationen von meinem C ++ bis zur WebAssembly -Datei mit -O3 -Flag entfernen? ⇐ C++
-
- Similar Topics
- Replies
- Views
- Last post