gpt4 book ai didi

c - Web 程序集 - 类型错误 : NetworkError when attempting to fetch resource

转载 作者:行者123 更新时间:2023-12-03 16:22:25 25 4
gpt4 key购买 nike

我正在尝试将一个简单的 hello world 程序从 C 编译成 Web 程序集。我一直在遵循 MDN ( https://developer.mozilla.org/en-US/docs/WebAssembly/C_to_wasm ) 提供的指南。通过 Firefox 71 导航到 HTML 页面后,我收到 TypeError: “NetworkError when attempting to fetch resource.”错误。

这是C代码:

#include <stdio.h>

int
main(int argc, char *argv[]) {
printf("hello, world!");
return 0;
}

以及用于编译的命令:
emcc hello.c -s WASM=1 -o hello.html

我错过了什么吗?有没有其他人遇到过这个问题?先感谢您。

最佳答案

我遇到了同样的问题,我尝试了一些解决方案,这些似乎有效:

(1) 看看是否emrun网络服务器可以通过以下方式运行文件:

emrun --no_browser --port 8080 .

(并在浏览器中打开该站点,即 localhost:8080 )

(2) 如果没有,那么尝试使用这个 git repo emsdk :
git clone https://github.com/juj/emsdk.git
cd emsdk
./emsdk install latest
./emsdk activate latest
source ./emsdk_env.sh

然后尝试 emrun如方法(1)。

CORS 已启用,这会阻止 .wasm正在下载的文件。于是跑个小服务器访问 html文件有效(这包括一个简单的 python 服务器,通过 python3 -m http.server !)

开发人员指南中也提到了这一点:

Finally, to actually run the program, we cannot simply open the HTML file in a web browser because cross-origin requests are not supported for the file protocol scheme. We have to actually serve the output files over HTTP.



您可以从这里引用所有这些信息: https://webassembly.org/getting-started/developers-guide/

关于c - Web 程序集 - 类型错误 : NetworkError when attempting to fetch resource,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59545455/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com