【.com速译】我们在之前的文章《WebAssmbly是什么?您为什么需要它?》中讨论了WebAssmbly是什么以及使用WebAssmbly的主要好处。阅读那篇文章后,您的第一个问题可能是“我如何开始使用WebAssembly?”这正是本文的主题。我将演示如何开始使用此技术。我将在UbuntuLinux20.04上向您展示如何运行总是有用的“Hello,World!”应用。这个简单的示例可以轻松开始使用WebAssembly。这里有几个步骤可以让您开始使用您的第一个WebAssembly应用程序。安装必要的依赖项幸运的是,没有太多的依赖项需要担心。但是在我们为WebAssembly安装必要的组件之前,我们需要使用以下命令安装git:sudoapt-getinstallgit-ygit安装后,您可以准备您的WebAssembly环境。安装Emscripten下一步是使用Emscripten,这是一种开源软件,可以将用C或C++(或任何使用LLVM的语言)编写的项目编译到浏览器、Node.js或wasm运行时环境中。EmscriptenSDK分析所有必要的工具(例如Clang、Python和Node.js),以及更新的机制,以便在工具链可用时迁移到更新版本的工具链。我们要做的是首先编译用户主目录中的代码。接下来,我们将通过使其可从Apache文档根目录运行来使其更加可用。下载EmpscriptenSDK,执行命令(从用户主目录):gitclonehttps://github.com/emscripten-core/emsdk.git文件下载完成后,使用以下命令切换到新建目录:cdemsdkconnect接下来,我们将确保更新我们的源代码:gitpull现在我们可以安装最新版本的Emscripten:./emsdkinstalllatest这将需要一些时间(因为它必须为您的系统安装很多工具).这部分大约需要30分钟才能完成。安装后,您可以激活最新版本:./emsdkactivatelatest最后,我们将设置各种环境变量:source./emsdk_env.sh创建您的Hello,World!源代码我们现在准备好最终创建HelloWorld!应用。我们将用C编写此应用程序,因此这对许多人来说可能是陈词滥调。使用以下命令创建一个新文件:nanohello_world.c在此文件中,粘贴以下代码:#includeintmain(intargc,char**argv){printf("Hello,NewStack!\n");注意“Hello,World!”上出现的变化。使用键盘快捷键[Ctrl]+[x]保存并关闭文件。编译源代码我们现在要做的是使用emcc编译器将C代码转换为WebAssembly(WASM)HTML文件。我们将使用以下命令执行此操作:emcchello_world.c-sWASM=1-ohello_world.html在我们真正开始编写代码之前,我们仍然需要安装Web服务器并将代码传输到服务器文档根目录。您也可以通过以下命令使用Emscripten的内置HTTP服务器来避免这种情况:emrun--no_browser--port8080hello_world.html但是,要使用上述命令,您必须使用以下命令重新编译代码:emcc--emrunhello_world。c-sWASM=1-ohello_world.html不妨以正确的方式进行。使用以下命令安装ApacheWeb服务器:sudoapt-getinstallapache2-y安装完成后,使用以下命令启动并启用ApacheWeb服务器服务:sudosystemctlstartapache2sudosystemctlenableapache2接下来,使用以下命令将emsdk文件夹移动到Apache文档根目录:sudomvemsdk/var/www/html现在将您的Web浏览器指向http://localhost/emsdk/hello_world.html,您应该会看到Hello,NewStack!显示(图1)。图1:你好,新堆栈!如果您的服务器上安装了Emscripten(无GUI),您可以将Web浏览器指向http://SERVER/emsdk/hello_world.html(其中Server是您服务器的IP地址或域),您将看到相同的结果。但是请注意,一旦将emsdk文件夹移动到文档根目录中,您将无法将新代码编译到WebAssembly中,因为环境变量会发生变化。因此,您需要再次启动该过程,只是这次使用sudo(因为您的标准用户没有在/var/www/html/目录中挂载的权限)。为此,您可以使用以下命令更改为根用户:sudo-s完成此操作后,您可以使用以下命令更改为文档根目录:cd/var/www/html/使用以下命令删除emsdk文件夹(如果您将其移动到文档根目录):rm-rfemsdk然后从头开始,回到命令:sudogitclonehttps://github.com/emscripten-core/emsdk.git再次阅读操作指南,您应该可以编译Apache在文档根代码中,然后从Web浏览器运行它。这就是如何在Emscripten的帮助下使用WebAssembly将C代码编译成HTML的要点。原标题:HowtoCompileCcodeintoWebAssemblywithEmscripten,作者:JackWallen