emscripten-core / emscripten-core/emscripten

Failed to create websocket in wasm worker

Open
#17,598 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
27.6k
Forks
3.6k
Avg merge
1d 1h
Merged PRs (30d)
105

Description

Please include the following in your bug report:
Uncaught RuntimeError: Aborted(Assertion failed: Attempted to call proxied function '_emscripten_websocket_new' in a Wasm Worker, but in Wasm Worker enabled builds, proxied function architecture is not available!)

**Version of emscripten/emsdk:**
emcc (Emscripten gcc/clang-like replacement + linker emulating GNU ld) 3.1.18 (d5ca9bba6513763d5bdddbd0efff759332bd85d7)
clang version 16.0.0 (https://github.com/llvm/llvm-project 48129cf0ed5053ed3fdf4f928180635e84892614)
Target: wasm32-unknown-emscripten
Thread model: posix

**Failing command line in full:**
emcc wasm.cpp -sENVIRONMENT=web,worker -sMODULARIZE -sEXPORT_NAME=createModule -o Module.js -sEXPORTED_RUNTIME_METHODS=ccall,cwrap -sWASM_WORKERS=1 -std=c++20 -ID:\local\boost_1_79_0 -lwebsocket.js

**Full link command and output with `-v` appended:**
"E:/workspace/emsdk/upstream/bin\clang++.exe" -target wasm32-unknown-emscripten -fignore-exceptions -fvisibility=default -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr -D__EMSCRIPTEN_SHARED_MEMORY__=1 -D__EMSCRIPTEN_WASM_WORKERS__=1 -DEMSCRIPTEN -D__EMSCRIPTEN_major__=3 -D__EMSCRIPTEN_minor__=1 -D__EMSCRIPTEN_tiny__=18 -Werror=implicit-function-declaration -IE:\workspace\emsdk\upstream\emscripten\cache\sysroot\include\SDL --sysroot=E:\workspace\emsdk\upstream\emscripten\cache\sysroot -Xclang -iwithsysroot/include\compat -std=c++20 -ID:\local\boost_1_79_0 -v -matomics -mbulk-memory wasm.cpp -c -o D:\Temp\emscripten_temp_q3ydz26q\wasm_0.o
clang version 16.0.0 (https://github.com/llvm/llvm-project 48129cf0ed5053ed3fdf4f928180635e84892614)
Target: wasm32-unknown-emscripten
Thread model: posix
InstalledDir: E:\workspace\emsdk\upstream\bin
(in-process)
"E:\\workspace\\emsdk\\upstream\\bin\\clang++.exe" -cc1 -triple wasm32-unknown-emscripten -emit-obj -mrelax-all --mrelax-relocations -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name wasm.cpp -mrelocation-model static -mframe-pointer=none -ffp-contract=on -fno-rounding-math -mconstructor-aliases -target-cpu generic -target-feature +atomics -target-feature +bulk-memory -mllvm -treat-scalable-fixed-error-as-warning -debugger-tuning=gdb -v "-fcoverage-compilation-dir=E:\\workspace\\Test" -resource-dir "E:\\workspace\\emsdk\\upstream\\lib\\clang\\16.0.0" -D __EMSCRIPTEN_SHARED_MEMORY__=1 -D __EMSCRIPTEN_WASM_WORKERS__=1 -D EMSCRIPTEN -D __EMSCRIPTEN_major__=3 -D __EMSCRIPTEN_minor__=1 -D __EMSCRIPTEN_tiny__=18 -I "E:\\workspace\\emsdk\\upstream\\emscripten\\cache\\sysroot\\include\\SDL" -I "D:\\local\\boost_1_79_0" -isysroot "E:\\workspace\\emsdk\\upstream\\emscripten\\cache\\sysroot" -internal-isystem "E:\\workspace\\emsdk\\upstream\\emscripten\\cache\\sysroot/include/wasm32-emscripten/c++/v1" -internal-isystem "E:\\workspace\\emsdk\\upstream\\emscripten\\cache\\sysroot/include/c++/v1" -internal-isystem "E:\\workspace\\emsdk\\upstream\\lib\\clang\\16.0.0\\include" -internal-isystem "E:\\workspace\\emsdk\\upstream\\emscripten\\cache\\sysroot/include/wasm32-emscripten" -internal-isystem "E:\\workspace\\emsdk\\upstream\\emscripten\\cache\\sysroot/include" -Werror=implicit-function-declaration -std=c++20 -fdeprecated-macro "-fdebug-compilation-dir=E:\\workspace\\Test" -ferror-limit 19 -fmessage-length=120 -fvisibility default -fgnuc-version=4.2.1 -fno-implicit-modules -fcxx-exceptions -fignore-exceptions -fexceptions -fcolor-diagnostics "-iwithsysroot/include\\compat" -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr -o "D:\\Temp\\emscripten_temp_q3ydz26q\\wasm_0.o" -x c++ wasm.cpp
clang -cc1 version 16.0.0 based upon LLVM 16.0.0git default target x86_64-pc-windows-msvc
ignoring nonexistent directory "E:\workspace\emsdk\upstream\emscripten\cache\sysroot/include/wasm32-emscripten/c++/v1"
ignoring nonexistent directory "E:\workspace\emsdk\upstream\emscripten\cache\sysroot/include/wasm32-emscripten"
#include "..." search starts here:
#include <...> search starts here:
E:\workspace\emsdk\upstream\emscripten\cache\sysroot\include\SDL
D:\local\boost_1_79_0
E:\workspace\emsdk\upstream\emscripten\cache\sysroot/include\compat
E:\workspace\emsdk\upstream\emscripten\cache\sysroot/include/c++/v1
E:\workspace\emsdk\upstream\lib\clang\16.0.0\include
E:\workspace\emsdk\upstream\emscripten\cache\sysroot/include
End of search list.
"E:/workspace/emsdk/upstream/bin\wasm-ld.exe" -o Module.wasm D:\Temp\emscripten_temp_q3ydz26q\wasm_0.o -LE:\workspace\emsdk\upstream\emscripten\cache\sysroot\lib\wasm32-emscripten E:\workspace\emsdk\upstream\emscripten\cache\sysroot\lib\wasm32-emscripten\crtbegin.o -lGL-ww -lal -lhtml5 -lstubs-debug -lnoexit -lc-ww-debug -ldlmalloc-ww -lcompiler_rt-ww -lc++-ww-noexcept -lc++abi-ww-noexcept -lsockets-ww -lwasm_workers-debug -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr --import-undefined --import-memory --shared-memory --strip-debug --export-if-defined=main --export-if-defined=emscripten_wasm_worker_initialize --export-if-defined=__start_em_asm --export-if-defined=__stop_em_asm --export-if-defined=__main_argc_argv --export-if-defined=fflush --export=emscripten_stack_get_end --export=emscripten_stack_get_free --export=emscripten_stack_get_base --export=emscripten_stack_init --export=stackSave --export=stackRestore --export=stackAlloc --export=__wasm_call_ctors --export=__errno_location --export=malloc --export=free --export=__cxa_is_pointer_type --export-table -z stack-size=5242880 --initial-memory=16777216 --no-entry --max-memory=16777216 --global-base=1024
"E:/workspace/emsdk/upstream\bin\wasm-emscripten-finalize" --dyncalls-i64 Module.wasm -o Module.wasm --detect-features
"E:/workspace/emsdk/node/14.18.2_64bit/bin/node.exe" E:\workspace\emsdk\upstream\emscripten\src\compiler.js D:\Temp\tmpxwpnzjf9.json
"E:/workspace/emsdk/upstream/bin\llvm-objcopy.exe" Module.wasm Module.wasm --remove-section=.debug* --remove-section=producers
"E:/workspace/emsdk/node/14.18.2_64bit/bin/node.exe" E:\workspace\emsdk\upstream\emscripten\tools\preprocessor.js D:\Temp\emscripten_temp_q3ydz26q\settings.js wasm_worker.js --expandMacros

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.