如何解决尝试在`emcc -s ONLY_MY_CODE`
我目前正在学习WASM,并且一直关注Google's tutorial,它告诉我使用以下命令:
-s WASM=1 -s ONLY_MY_CODE=1 -s EXPORTED_FUNCTIONS="['_board_init','_board_ref','_board_step']" \
-o output.js *.c
但是,我收到错误提示:
emcc: error: Attempt to set a non-existent setting: 'ONLY_MY_CODE'
- perhaps a typo in emcc's -s X=Y notation?
- (see src/settings.js for valid values)
版本: emcc:2.0.1
操作系统: Mac OS
实际上,以上是我遇到的第一个问题,可能导致了另一个问题。我运行不带选项-s ONLY_MY_CODE
的命令,然后在js文件中加载并实例化.wasm。运行网页后,我从控制台收到另一条错误消息:
Uncaught (in promise) LinkError: WebAssembly.instantiate(): Import #0 module="env" function="emscripten_resize_heap" error: function import requires a callable
希望有WASM经验的人都能给我一些见识。
谢谢您的时间。
解决方法
在 emcc v1.38.47 之后,不再支持 ONLY_MY_CODE 选项。 改用 STANDALONE_WASM。
我想下面的代码应该适合你;
-s WASM=1 -s STANDALONE_WASM -s EXPORTED_FUNCTIONS="'_board_init','_board_ref','_board_step']" -o output.js *.c
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。