a-shell环境WebAssembly
由于苹果公司的安全策略,系统会拒绝app之外的可执行代码。这样理论上我们不能在iOS/iPadOS上使用编译器生成执行程序进行运行和测试。为了在 a-shell
中开发C/C++, a-shell
使用了 WebAssembly 对象代码,而不是常规的原生二进制文件。在 WebAssembly 运行时环境(runtime environment),就能够测试编写的代码。
在 a-shell
环境中,可以编译 C/C++ 程序。默认,clang会生成 WebAssembly 程序,可以通过 wasm a.out
来运行。
安装llvm
a-shell
环境需要安装 llvm
否则提示错误:
In order to use clang, you need to install or update the C SDK with 'pkg install llvm-18'
但是,我尝试安装
安装
llvm
以使用clangpkg install llvm-18
提示报错:
安装
llvm
报错Package llvm-18 not found
这个报错是因为没有正确设置 $PKG_SERVER
环境变量,导致无法找到软件包仓库导致的,请执行以下命令(持久化则添加到 ~/Documents/.profile
):
添加环境变量
$PKG_SERVER
export PKG_SERVER=https://raw.githubusercontent.com/holzschu/a-Shell-commands/master/