MacOS终端搭建Substrate遇命令未找到问题求助
解决MacOS终端中rustup/cargo命令未找到及Substrate模板目录已存在的问题
先给你梳理下问题核心:Rust开发环境没有正确配置到终端的PATH环境变量中,这才是rustup和cargo命令找不到的根本原因,目录已存在是次要问题,不用急着直接删除重来。
第一步:先搞定Rust环境的PATH配置
你之前按教程安装Rust后,大概率是没把Rust的二进制路径添加到bash的配置文件里,或者添加后终端重启没生效。按下面步骤操作:
- 先手动临时加载Rust环境变量,测试命令是否可用:
在终端执行:
接着输入source $HOME/.cargo/envrustup --version和cargo --version,如果能正常显示版本信息,说明Rust已经安装成功,只是配置没永久生效。 - 永久配置PATH,避免每次重启终端都要手动加载:
- 打开bash的配置文件(没有的话就创建):
nano ~/.bash_profile - 在文件末尾添加一行:
source $HOME/.cargo/env - 保存并退出:按
Ctrl+O,回车确认保存,再按Ctrl+X退出编辑。 - 让配置立即生效:
source ~/.bash_profile
rustup和cargo命令,应该就能正常调用了。 - 打开bash的配置文件(没有的话就创建):
第二步:处理Substrate模板目录已存在的问题
等Rust环境搞定后,再处理目录的问题:
- 如果这个
substrate-node-template目录是之前未完成的残次克隆,没有保留价值:
直接删除目录后重新克隆:rm -rf substrate-node-template git clone -b v2.0.0 --depth 1 https://github.com/substrate-developer-hub/substrate-node-template - 如果想保留这个目录(比如里面有你之前的修改):
先进入目录,检查是否是有效的Git仓库:
如果显示正常的Git状态,就切换到指定版本:cd substrate-node-template git status
如果不是有效的Git仓库(比如之前克隆中断),还是删除后重新克隆更稳妥。git fetch origin v2.0.0 git checkout v2.0.0
你的终端日志参考
-bash: rustup: command not found Elizabeths-MacBook-Pro:~ el1748eth$ git clone -b v2.0.0 --depth 1 https://github.com/substrate-developer-hub/substrate-node-template fatal: destination path 'substrate-node-template' already exists and is not an empty directory. Elizabeths-MacBook-Pro:~ el1748eth$ cd substrate-node-template/ Elizabeths-MacBook-Pro:substrate-node-template el1748eth$ cargo build -bash: cargo: command not found
内容的提问来源于stack exchange,提问作者el1748eth
相关产品推荐
相关产品推荐

