阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

      教程列表

      抓包专区
      测试专区

      编译并运行第一个 WebAssembly 程序

      现在,我们有了完整的工具链,可用于将简单程序编译为 WebAssembly。

      但是,还有一些注意事项:

      注意事项

      • 如果我们要 Emscripten 生成运行我们程序的 HTML 页面,除了 Wasm 二进制文件和 JavaScript 包装器外,我们还必须指定带有。html 扩展名的输出文件名。
      • 最后,要真正运行该程序,我们不能简单地在 Web 浏览器中打开 HTML 文件,因为 file 协议方案不支持跨域请求。我们实际上必须通过 HTTP 提供输出文件。

      代码

      下面的命令将创建一个简单的 hello world 程序并进行编译。编译步骤以粗体突出显示。

      $ mkdir hello
      $ cd hello
      $ cat << EOF > hello.c
      #include <stdio.h>
      int main(int argc, char ** argv) {
        printf("Hello, world!\n");
      }
      EOF
      $ emcc hello.c -o hello.html
      

      运行

      要通过 HTTP 提供编译的文件,我们可以使用 Emscripten SDK 随附的 emrun Web 服务器:

      $ emrun --no_browser --port 8080 .
      

      HTTP 服务器运行后,可以在浏览器中将其打开 http://localhost:8080/hello.html

      如果您在 Emscripten 控制台上看到 Hello, world!,那么恭喜您!您已经成功编译到 WebAssembly!

      目录
      目录