mac安装cast

背景

pycharm本地运行脚本时提示cast没有安装

问题原因

脚本尝试调用cast命令(以太坊开发工具foundry中的子命令),但您的系统未安装该工具。

从日志可见,错误发生在通过sysutil.py执行shell命令时。

解决方案

方法1:安装foundry工具集

1、打开终端,执行安装命令:

bash 复制代码
curl -L https://foundry.paradigm.xyz | bash

安装完成后,脚本会提示将 ~/.foundry/bin 添加到 PATH。如果没有自动配置,需手动操作。

2、安装完成后运行:

bash 复制代码
foundryup

3、配置环境变量

针对 zsh(macOS 默认 shell):

编辑 ~/.zshrc 文件:

bash 复制代码
nano ~/.zshrc

在文件末尾添加:

bash 复制代码
export PATH="$HOME/.foundry/bin:$PATH"

保存后加载配置:

bash 复制代码
source ~/.zshrc

验证配置是否生效:

bash 复制代码
echo $PATH | grep foundry  # 应显示 ~/.foundry/bin
which foundryup           # 应返回路径 ~/.foundry/bin/foundryup

4、验证安装:

bash 复制代码
cast --version

5、手动运行 foundryup

如果环境变量已配置但仍报错,尝试直接运行绝对路径:

bash 复制代码
~/.foundry/bin/foundryup

6、检查权限问题

确保 foundryup 有可执行权限:

bash 复制代码
chmod +x ~/.foundry/bin/foundryup

7、验证安装成功

运行以下命令确认工具链可用:

bash 复制代码
foundryup -v  # 查看版本
cast --help   # 检查 cast 命令

如果问题仍未解决,可能是安装过程中断导致文件损坏,建议删除 ~/.foundry 目录后重新安装。

方法2:检查PATH环境变量

如果已安装但仍报错:

bash 复制代码
echo $PATH
which cast

确保foundry的安装路径(通常是~/.foundry/bin)已加入PATH:

bash 复制代码
export PATH="$HOME/.foundry/bin:$PATH"

安装完成

1、检查 Foundry 是否已安装:

bash 复制代码
ls ~/.foundry/bin

如果目录存在且包含 foundryup、cast 等文件,说明已安装但未配置环境变量。如果目录不存在,需要重新安装。

问题1

运行ls ~/.foundry/bin 后有foundryup 但是没有cast文件

问题说明

如果 ls ~/.foundry/bin 显示有 foundryup 但没有 cast 文件,说明 Foundry 工具链安装不完整。

解决

  1. 手动运行 foundryup 更新工具链
    直接执行已存在的 foundryup 来补全缺失组件:
bash 复制代码
~/.foundry/bin/foundryup

这会自动下载最新版本的 cast、forge 等工具。

  1. 检查网络问题
    如果 foundryup 执行后仍无 cast 文件:

可能是网络问题导致下载中断,尝试:

bash 复制代码
foundryup --verbose  # 查看详细下载日志

必要时使用代理或切换网络环境。

  1. 验证安装路径
    确认文件是否被安装到其他路径:
bash 复制代码
find ~ -name "cast" 2>/dev/null

如果发现其他路径(如 /usr/local/bin),需同步环境变量。

  1. 完全重装 Foundry
    若问题持续,彻底删除后重装:
bash 复制代码
rm -rf ~/.foundry
curl -L https://foundry.paradigm.xyz | bash
source ~/.zshrc
foundryup
  1. 检查系统兼容性
    确保 macOS 版本 ≥ 10.15(Catalina)
    如果是 M1/M2 芯片设备,需确认 Rosetta 已安装:
bash 复制代码
softwareupdate --install-rosetta
  1. 验证成功

最终检查:

bash 复制代码
ls ~/.foundry/bin  # 应包含 cast/forge/anvil
cast --version    # 显示版本号

如果问题仍未解决,可能是 GitHub 发布页面的临时问题,建议稍后重试或通过 Foundry 官方文档 排查。

相关推荐
冷雨夜中漫步6 小时前
Python快速入门(6)——for/if/while语句
开发语言·经验分享·笔记·python
郝学胜-神的一滴6 小时前
深入解析Python字典的继承关系:从abc模块看设计之美
网络·数据结构·python·程序人生
百锦再6 小时前
Reactive编程入门:Project Reactor 深度指南
前端·javascript·python·react.js·django·前端框架·reactjs
喵手8 小时前
Python爬虫实战:旅游数据采集实战 - 携程&去哪儿酒店机票价格监控完整方案(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集结果csv导出·旅游数据采集·携程/去哪儿酒店机票价格监控
2501_944934738 小时前
高职大数据技术专业,CDA和Python认证优先考哪个?
大数据·开发语言·python
helloworldandy8 小时前
使用Pandas进行数据分析:从数据清洗到可视化
jvm·数据库·python
肖永威10 小时前
macOS环境安装/卸载python实践笔记
笔记·python·macos
TechWJ10 小时前
PyPTO编程范式深度解读:让NPU开发像写Python一样简单
开发语言·python·cann·pypto
枷锁—sha10 小时前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全
abluckyboy10 小时前
Java 实现求 n 的 n^n 次方的最后一位数字
java·python·算法