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 官方文档 排查。

相关推荐
独隅2 分钟前
WebStorm macOS 安装调优与实战效果全景
ide·macos·webstorm
一条大祥脚5 分钟前
CuTe 与 CuTe DSL:从 C++ 模板元编程到 Python DSL 的 GPU 编程演进
开发语言·c++·python·cutlass·cute·cute dsl
10年前端老司机40 分钟前
Milvus 8种检索能力实践
数据库·python·agent
Sakura_j_h_1 小时前
从零写一个 MCP stdio Server:用 Python 校验博客文章格式
开发语言·python·自动化·ai工具·mcp·json-rpc
大草原的小灰灰2 小时前
LLM应用的标准开发框架LangChain(八)- 中间件
python·中间件·langchain
卷无止境2 小时前
百万 token 时代的真相:主流大模型上下文窗口与最大输出的横向对比分析
人工智能·python
用户298698530142 小时前
Python 实战:将 HTML 批量转换为 Markdown
python·html·markdown
hhcgchpspk2 小时前
flask服务端页面预防被爬措施
后端·python·flask·网络爬虫·防爬
小小张说故事2 小时前
Python 里 copy.copy() 和 deepcopy() 到底差在哪:拆开 __copy__、__deepcopy__ 和那个防止无限递归的 memo 字典
python
vipxieliang3 小时前
Python collections:高效容器与实战案例
后端·python