gpt4 book ai didi

bash - Web Assembly emrun : command not found when running from batch script, 但在命令窗口中运行良好

转载 作者:行者123 更新时间:2023-12-02 09:43:44 24 4
gpt4 key购买 nike

我成功地使用 Windows Subsystem for Linux (Ubuntu) 组合并运行了一个 hello world 程序 Web Assembly。基本上遵循此处找到的入门页面:https://webassembly.org/getting-started/developers-guide/

我使用以下命令成功运行了程序:

emrun --browser "/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe" --verbose --port 8081 hello.html

当我在命令行中运行它时,一切都很好,但是当我制作了一个名为 start.sh 的脚本时,如下所示:

#!/usr/bin/env bash
echo "Starting hello world in chrome."
emrun --browser "/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe" --verbose --port 8081 hello.html

我收到标题“emrun:commnand not find”中提到的错误。

第一行“#!/usr/bin/env bash”是从 Wasm SDK 中的一个 .sh 文件复制的,所以我认为它是对的吗?我还尝试使用 Windows 10 提供的编辑环境变量管理器将 Wasm SDK 添加到 $PATH,但没有成功。

我对批处理脚本没有很多经验,我不知道如何从这里继续。我觉得我错过了一些明显的东西,但我只是无法弄清楚控制台和脚本文件之间有什么区别?

感谢您花时间阅读本文。

最佳答案

经过一番绞尽脑汁之后,我自己找到了答案!感谢我见过的所有模因,我实际上会与您分享答案。

我编辑了脚本,使其看起来像这样:

#!/usr/bin/env bash
cd ..
cd Wasm/emsdk
source ./emsdk_env.sh --build=Release
cd ..
cd ..
cd hello
emcc hello.c -o hello.html
echo "Starting hello world in chrome."
emrun --browser "/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe" --verbose --port 8081 hello.html

运行“$ sudo bash start.sh”现在会在控制台中打印出以下消息:

Adding directories to PATH:
PATH += /home/elaurora/Wasm/emsdk
PATH += /home/elaurora/Wasm/emsdk/fastcomp/emscripten
PATH += /home/elaurora/Wasm/emsdk/node/12.9.1_64bit/bin

Setting environment variables:
EMSDK = /home/elaurora/Wasm/emsdk
EM_CONFIG = /home/elaurora/.emscripten
EMSDK_NODE = /home/elaurora/Wasm/emsdk/node/12.9.1_64bit/bin/node

Starting hello world in chrome.
... then a bunch of unrelated stuff regarding the server that was just started

当然,要使此方法适合您,您必须编辑每个路径,以便该行

source ./emsdk_env.sh --build=Release

在 emsdk 文件夹中运行。

可能有更好的方法来做到这一点,也许是一种涉及永久设置正确的 PATH 变量以具有上述值的方法,但不幸的是我不知道如何解决这个问题。尽管如此,这个解决方案对我来说仍然有效。

关于bash - Web Assembly emrun : command not found when running from batch script, 但在命令窗口中运行良好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58209020/

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