You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux WSL环境下Sui安装失败求助:aws-sdk-ec2编译出错及警告问题

在WSL中安装Sui时aws-sdk-ec2编译被SIGKILL终止的解决方法

核心原因

编译aws-sdk-ec2这类大型Rust依赖时触发SIGKILL,绝大多数情况是WSL内存/交换空间不足。Rust编译器处理复杂依赖树时会占用大量内存,而WSL默认的资源分配往往无法支撑这类编译需求。你遇到的代码警告(不必要的mut变量、私有项遮蔽全局导出等)属于编译时的非致命提示,和最终的终止错误无关。

具体解决步骤

1. 调整WSL内存分配

WSL默认占用主机一半内存,可手动修改配置提升内存上限:

  • 在Windows用户目录(如C:\Users\你的用户名\)下创建或编辑.wslconfig文件,写入:
[wsl2]
memory=8GB  # 根据主机实际内存调整,建议至少分配6GB
swap=4GB
localhostForwarding=true
  • 执行wsl --shutdown关闭WSL,重新启动后配置生效。

2. 增加交换空间(内存不足时补充)

如果主机物理内存有限,可在WSL内创建交换文件缓解内存压力:

# 创建4GB交换文件
sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

若需永久生效,将交换文件配置添加到/etc/fstab:

echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

3. 限制Cargo并行编译线程

减少并行编译的线程数,避免内存过载:

# 当前终端临时生效
export CARGO_BUILD_JOBS=2
# 永久生效,添加到shell配置文件(如~/.bashrc或~/.zshrc)
echo 'export CARGO_BUILD_JOBS=2' >> ~/.bashrc
source ~/.bashrc

线程数可根据CPU核心数调整,比如4核CPU设为2,8核设为4。

4. 清理Cargo缓存后重新编译

缓存损坏可能导致编译异常,清理后再尝试安装:

cargo clean
# 重新执行安装命令
cargo install --locked --git https://github.com/MystenLabs/sui.git --branch devnet sui

5. 安装WSL基础编译依赖

确保WSL环境具备完整的编译工具链:

sudo apt update && sudo apt install -y build-essential libssl-dev pkg-config

内容的提问来源于stack exchange,提问作者Diego Félix Esparza Dianta

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 08:50:06