mac安裝cast

背景

pycharm本地運行腳本時提示cast沒有安裝
在這里插入圖片描述

問題原因

腳本嘗試調用cast命令(以太坊開發工具foundry中的子命令),但您的系統未安裝該工具。
從日志可見,錯誤發生在通過sysutil.py執行shell命令時。

解決方案

方法1:安裝foundry工具集

1、打開終端,執行安裝命令:

curl -L https://foundry.paradigm.xyz | bash

安裝完成后,腳本會提示將 ~/.foundry/bin 添加到 PATH。如果沒有自動配置,需手動操作。

2、安裝完成后運行:

foundryup

3、配置環境變量
針對 zsh(macOS 默認 shell):
編輯 ~/.zshrc 文件:

nano ~/.zshrc

在文件末尾添加:

export PATH="$HOME/.foundry/bin:$PATH"

保存后加載配置:

source ~/.zshrc

驗證配置是否生效:

echo $PATH | grep foundry  # 應顯示 ~/.foundry/bin
which foundryup           # 應返回路徑 ~/.foundry/bin/foundryup

4、驗證安裝:

cast --version

5、手動運行 foundryup
如果環境變量已配置但仍報錯,嘗試直接運行絕對路徑:

~/.foundry/bin/foundryup

6、檢查權限問題
確保 foundryup 有可執行權限:

chmod +x ~/.foundry/bin/foundryup

7、驗證安裝成功
運行以下命令確認工具鏈可用:

foundryup -v  # 查看版本
cast --help   # 檢查 cast 命令

如果問題仍未解決,可能是安裝過程中斷導致文件損壞,建議刪除 ~/.foundry 目錄后重新安裝。

方法2:檢查PATH環境變量

如果已安裝但仍報錯:

echo $PATH
which cast

確保foundry的安裝路徑(通常是~/.foundry/bin)已加入PATH:

export PATH="$HOME/.foundry/bin:$PATH"

安裝完成

1、檢查 Foundry 是否已安裝:

ls ~/.foundry/bin

如果目錄存在且包含 foundryup、cast 等文件,說明已安裝但未配置環境變量。如果目錄不存在,需要重新安裝。

問題1

運行ls ~/.foundry/bin 后有foundryup 但是沒有cast文件

問題說明
如果 ls ~/.foundry/bin 顯示有 foundryup 但沒有 cast 文件,說明 Foundry 工具鏈安裝不完整。

解決

  1. 手動運行 foundryup 更新工具鏈
    直接執行已存在的 foundryup 來補全缺失組件:
~/.foundry/bin/foundryup

這會自動下載最新版本的 cast、forge 等工具。

  1. 檢查網絡問題
    如果 foundryup 執行后仍無 cast 文件:

可能是網絡問題導致下載中斷,嘗試:

foundryup --verbose  # 查看詳細下載日志

必要時使用代理或切換網絡環境。

  1. 驗證安裝路徑
    確認文件是否被安裝到其他路徑:
find ~ -name "cast" 2>/dev/null

如果發現其他路徑(如 /usr/local/bin),需同步環境變量。

  1. 完全重裝 Foundry
    若問題持續,徹底刪除后重裝:
rm -rf ~/.foundry
curl -L https://foundry.paradigm.xyz | bash
source ~/.zshrc
foundryup
  1. 檢查系統兼容性
    確保 macOS 版本 ≥ 10.15(Catalina)
    如果是 M1/M2 芯片設備,需確認 Rosetta 已安裝:
softwareupdate --install-rosetta
  1. 驗證成功

最終檢查:

ls ~/.foundry/bin  # 應包含 cast/forge/anvil
cast --version    # 顯示版本號

如果問題仍未解決,可能是 GitHub 發布頁面的臨時問題,建議稍后重試或通過 Foundry 官方文檔 排查。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/80476.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/80476.shtml
英文地址,請注明出處:http://en.pswp.cn/web/80476.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【搭建Node-RED + MQTT Broker實現AI大模型交互】

搭建Node-RED MQTT Broker實現AI大模型交互 搭建Node-RED MQTT Broker實現AI大模型交互一、系統架構二、環境準備與安裝1. 安裝Node.js2. 安裝Mosquitto MQTT Broker3. 配置Mosquitto4. 安裝Node-RED5. 配置Node-RED監聽所有網絡接口6. 啟動Node-RED 三、Node-RED流程配置1. …

算法第21天 | 第77題. 組合、216. 組合總和 III、17. 電話號碼的字母組合

回溯基礎概念 什么是回溯? 如何實現回溯? 第77題. 組合 題目 思路與解法 carl的講解: 回溯搜索法 class Solution:def combine(self, n: int, k: int) -> List[List[int]]:self.path []self.res []self.backtracking(n, k, 1)retu…

嵌入式硬件篇---拓展板

文章目錄 前言 前言 本文簡單介紹了拓展板的原理以及使用。

【深度學習基礎】從感知機到多層神經網絡:模型原理、結構與計算過程全解析

【深度學習基礎】從感知機到多層神經網絡:模型原理、結構與計算過程全解析 1. 引言 神經網絡的重要性: 作為人工智能的核心技術之一,神經網絡通過模擬人腦神經元的工作機制,成為解決復雜模式識別、預測和決策任務的利器。從圖像分…

sparkSQL讀入csv文件寫入mysql(2)

(二)創建數據庫和表 接下來,我們去創建一個新的數據庫,數據表,并插入一條數據。 -- 創建數據庫 CREATE DATABASE spark; -- 使用數據庫 USE spark;-- 創建表 create table person(id int, name char(20), age int);-- …

JVM如何處理多線程內存搶占問題

目錄 1、堆內存結構 2、運行時數據 3、內存分配機制 3.1、堆內存結構 3.2、內存分配方式 1、指針碰撞 2、空閑列表 4、jvm內存搶占方案 4.1、TLAB 4.2、CAS 4.3、鎖優化 4.4、逃逸分析與棧上分配 5、問題 5.1、內存分配競爭導致性能下降 5.2、偽共享&#xff08…

Ubuntu---omg又出bug了

自用遇到問題的合集 250518——桌面文件突然消失 ANS:參考博文

正則表達式與文本處理的藝術

引言 在前端開發領域,文本處理是一項核心技能。正則表達式作為一種強大的模式匹配工具,能夠幫助我們高效地處理各種復雜的文本操作任務。 正則表達式基礎 什么是正則表達式? 正則表達式是一種用于匹配字符串中字符組合的模式。它由一系列…

初學c語言15(字符和字符串函數)

一.字符串分類函數 頭文件:ctype.h 作用:判斷是什么類型的字符 函數舉例: 函數 符合條件就為真 islower判斷是否為小寫字符(a~z)isupper判斷是否為大寫字符(A~Z)isdigit十進制數字&#xf…

12-串口外設

一、串口外設的基本概述 1、基本定義 串口通信,通過在通信雙方之間以比特位(bit)的形式逐一發送或接收數據,實現了信息的有效傳遞。其通信方式不僅簡單可靠,而且成本很低。 2、stm32的串口 下面是兩個MCU的數據交互&…

NE555雙音門鈴實驗

1腳為地。通常被連接到電路共同接地。 2腳為觸發輸入端。 3腳為輸出端,輸出的電平狀態受觸發器的控制,而觸發器受上比較器6腳和下比較器2腳的控制。當觸發器接受上比較器A1從R腳輸入的高電平時,觸發器被置于復位狀態,3腳輸出低電…

Redis分布式鎖實現

概述 為什么要要分布式鎖 在并發編程中,我們通過鎖,來避免由于競爭而造成的數據不一致問題。 通常,我們以synchronized 、Lock來使用它。Java中的鎖,只能保證在同一個JVM進程內中執行 如果需要在分布式集群環境下的話&#xff0…

軟件設計師-錯題筆記-網絡基礎知識

1. 解析: 1.子網劃分相關知識: 在IPv4地址中,/27表示子網掩碼為255.255.255.224,它將一個C類網絡(默認子網掩碼255.255.255.0)進一步劃分 對于子網掩碼255.255.255.224,其對應的二進制為111…

Fine-Tuning Llama2 with LoRA

Fine-Tuning Llama2 with LoRA 1. What is LoRA?2. How does LoRA work?3. Applying LoRA to Llama2 models4. LoRA finetuning recipe in torchtune5. Trading off memory and model performance with LoRAModel ArgumentsReferences https://docs.pytorch.org/torchtune/ma…

python打卡day29

類的裝飾器 知識點回顧 類的裝飾器裝飾器思想的進一步理解:外部修改、動態類方法的定義:內部定義和外部定義 回顧一下,函數的裝飾器是 :接收一個函數,返回一個修改后的函數。類也有修飾器,類裝飾器本質上確…

十一、STM32入門學習之FREERTOS移植

目錄 一、FreeRTOS1、源碼下載:2、解壓源碼 二、移植步驟一:在需要移植的項目中新建myFreeRTOS的文件夾,用于存放FREERTOS的相關源碼步驟二:keil中包含相關文件夾和文件引用路徑步驟三:修改FreeRTOSConfig.h文件的相關…

2025 年十大網絡安全預測

隨著我們逐步邁向 2026 年,網絡安全領域正處于一個關鍵的轉折點,技術創新與數字威脅以前所未有的復雜態勢交織在一起。 地緣政治環境進一步加劇了這些網絡安全挑戰,國際犯罪組織利用先進的技術能力來追求戰略目標。 人工智能在這一不斷演變…

Mac 環境下 JDK 版本切換全指南

概要 在 macOS 上安裝了多個 JDK 后,可以通過系統自帶的 /usr/libexec/java_home 工具來查詢并切換不同版本的 Java。只需在終端中執行 /usr/libexec/java_home -V 列出所有已安裝的 JDK,然后將你想使用的版本路徑賦值給環境變量 JAVA_HOME,…

中級網絡工程師知識點6

1.堆疊方式可以共享使用交換機背板帶寬;級聯方式可以使用雙絞線將交換機連接在一起 2.光功率計是專門測量光功率大小的儀器,在對光纜進行檢測時,通過在光纜的發送端和接收端分別測量光功率,進而計算出光衰情況。 3.光時域反射計…

動態規劃——烏龜棋

題目描述 解題思路 首先這是一個很明顯的線性dp的題目,很容易發現規律 數據輸入 我們用 h[ N ] 數組存儲每一個格子的分數 用 cnt [ ],數組表示每一中卡片的數目 1,狀態表示 因為這里一個有4種跳躍方式可以選擇 f[ i ][ a ][ b ][ c ][ d…