Win系统WSL2安装Solana开发环境

107 阅读2分钟

1.网络配置

开启 Tun 模式 并保证节点可访问。

测试节点可访问Solana,win系统浏览器访问

2.WSL2环境

// 安装 WSL2  !!! win 环境cmd使用
wsl --install

# 安装前先 ping 一下 Solana 确保网络可达 网址选择需要梯子的就行,这个方便就这个
ping solana.com

// WSL 默认安装 Ubuntu。你可以在搜索栏中输入 "Ubuntu" 来打开 Linux 终端
// 更新包列表和升级系统 wsl中使用
sudo apt update && sudo apt upgrade -y

// 安装 oh-my-zsh 美化终端 wsl中使用
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

// 安装 git wsl中使用
sudo apt install git-all

// 重启 WSL2  !!! win 环境cmd使用
wsl --shutdown

在win系统创建一个文件 记得使用 vscode 创建

由于常需要关闭 wsl2 不消耗 win 性能 这里创建个 WSL_Close.bat 脚本

双击运行即可关闭 wsl2

@echo off
chcp 65001 >nul 2>&1
echo 正在关闭WSL...
wsl --shutdown
echo WSL已关闭,正在验证...
wsl --list --verbose
echo 若上方列表中WSL状态为Stopped,则关闭成功!
pause

3.Solana 环境

  1. 工程目录划分
# 按步执行
# 创建企业级开发目录结构
mkdir -p ~/Developer
cd ~/Developer

# 主项目结构
mkdir -p \
  projects/solana/{contracts,clients,tests,scripts} \
  projects/rust/{libraries,binary-projects} \
  projects/typescript/{packages,apps} \
  projects/python/{packages,scripts} \
  labs/experiments \
  labs/playground \
  tools/{bin,scripts,configs} \
  docs/{architecture,api-references,meetings} \
  temp/{builds,downloads,cache}

# 创建项目标记文件
touch projects/README.md
echo "# 开发项目目录" > projects/README.md

2. Shell环境配置 (~/.zshrc) 追加进文件 不要动之前的配置


# ==================== 企业级开发环境配置 ====================

# 目录别名
export DEV_ROOT="$HOME/Developer"
export SOLANA_DEV="$DEV_ROOT/projects/solana"
export RUST_DEV="$DEV_ROOT/projects/rust"
export TS_DEV="$DEV_ROOT/projects/typescript"

# 快速跳转别名
alias dev='cd $DEV_ROOT'
alias sol='cd $SOLANA_DEV'
alias rdev='cd $RUST_DEV'
alias tsdev='cd $TS_DEV'
alias labs='cd $DEV_ROOT/labs'
alias tools='cd $DEV_ROOT/tools'

# 项目目录快速跳转
prj() {
    if [ -z "$1" ]; then
        cd $DEV_ROOT/projects
    else
        cd $DEV_ROOT/projects/$1
    fi
}

# 路径配置
export PATH="$DEV_ROOT/tools/bin:$PATH"
export PATH="$HOME/.local/bin:$PATH"

# 开发工具配置
export RUSTUP_HOME="$HOME/.rustup"
export CARGO_HOME="$HOME/.cargo"
export PATH="$CARGO_HOME/bin:$PATH"

# Solana配置
export PATH="$HOME/.local/share/solana/install/active_release/bin:$PATH"
export SOLANA_METRICS_CONFIG="host=https://metrics.solana.com:8086,db=mainnet-beta,u=mainnet-beta_write,p=password"

# Node.js配置(用于TypeScript/JavaScript开发)
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"

# Python配置
# export PYENV_ROOT="$HOME/.pyenv"
# export PATH="$PYENV_ROOT/bin:$PATH"
# if command -v pyenv 1>/dev/null 2>&1; then
#     eval "$(pyenv init --path)"
#     eval "$(pyenv init -)"
# fi

# Docker配置(如果需要)
# export DOCKER_HOST=tcp://localhost:2375

# 开发环境变量
# export EDITOR="code"
# export VISUAL="$EDITOR"

# Git配置
export GIT_AUTHOR_NAME="填写你自己的"
export GIT_AUTHOR_EMAIL="填写你自己的"
export GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME"
export GIT_COMMITTER_EMAIL="$GIT_AUTHOR_EMAIL"

# 历史记录配置
export HISTSIZE=10000
export SAVEHIST=10000
export HISTFILE=~/.zsh_history
setopt HIST_IGNORE_ALL_DUPS
setopt HIST_FIND_NO_DUPS
setopt HIST_REDUCE_BLANKS

# ==================== 工具函数 ====================

# 清理临时文件
dev-clean() {
    echo "🧹 清理开发环境..."
    rm -rf $DEV_ROOT/temp/builds/*
    rm -rf $DEV_ROOT/temp/downloads/*
    cargo clean 2>/dev/null || true
    echo "✅ 清理完成"
}

# 查看环境状态
dev-status() {
    echo "📊 开发环境状态"
    echo "===================="
    echo "Solana: $(which solana 2>/dev/null && solana --version || echo '未安装')"
    echo "Rust: $(which rustc 2>/dev/null && rustc --version || echo '未安装')"
    echo "Node: $(which node 2>/dev/null && node --version || echo '未安装')"
    echo "Python: $(which python3 2>/dev/null && python3 --version || echo '未安装')"
    echo "===================="
}

记得重启一下 wsl

  1. 安装前提条件

安装前先 ping 一下 Solana

# 安装前先 ping 一下 Solana 确保网络可达
ping solana.com

# 网络可达后安装前提条件 
sudo apt-get install -y \
    build-essential \
    pkg-config \
    libudev-dev llvm libclang-dev \
    protobuf-compiler libssl-dev

# 安装 Solana  必需的依赖项  这个命令可以多次执行不会安装冲突的 遇见其他没安装上在执行一遍
curl --proto '=https' --tlsv1.2 -sSfL https://solana-install.solana.workers.dev | bash
 
# 安装成功后,会返回类似如下的输出  
Installed Versions:
Rust: rustc 1.92.0 (ded5c06cf 2025-12-08)
Solana CLI: solana-cli 3.0.13 (src:90098d26; feat:3604001754, client:Agave)
Anchor CLI: anchor-cli 0.32.1
Surfpool CLI: surfpool 1.0.0-rc1
Node.js: v24.10.0
Yarn: 1.22.22
# 重启 wsl
# 使用之前的脚本验证安装情况
dev-status

# 成功后,会返回类似如下的输出  
📊 开发环境状态
====================
Solana: /home/liu4509/.local/share/solana/install/active_release/bin/solana
solana-cli 3.0.13 (src:90098d26; feat:3604001754, client:Agave)
Rust: /home/liu4509/.cargo/bin/rustc
rustc 1.92.0 (ded5c06cf 2025-12-08)
Node: /home/liu4509/.nvm/versions/node/v24.10.0/bin/node
v24.10.0
Python: /usr/bin/python3
Python 3.12.3
====================