doc/build_wasm_app.md: Update a note about LLVM 13 incompatibility (#1441)

Remove the workaround as it wasn't so good.
  (It can cause the lack of ctor calls)
Mention that it's only about a command.
This commit is contained in:
YAMAMOTO Takashi 2022-09-05 12:56:24 +09:00 committed by GitHub
parent 531a011700
commit ef8c6bd98a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -160,10 +160,9 @@ Firstly if libc-builtin (-nostdlib) mode meets the requirements, e.g. there are
Most of the above methods are also available for libc-wasi mode, besides them, we can export malloc and free functions with `-Wl,--export=malloc -Wl,--export=free` option, so WAMR runtime will disable its app heap and call the malloc/free function exported to allocate/free the memory from/to the heap space managed by libc.
Note: wasm-ld from LLVM 13 and later automatically inserts dtor calls
for exported funtions. It breaks the malloc/free export mentioned above.
A workaround: Add `-Wl,--export=__wasm_call_ctors`, which happens to
prevent the automatic insertions for the current implementation.
Note: wasm-ld from LLVM 13 and later automatically inserts ctor/dtor calls
for all exported functions for a command. (vs reactor)
It breaks the malloc/free exports mentioned above.
## 3. Build wasm app with pthread support