「我 learned this the hard way」——这是原文作者写下的一句话。他花了多少时间才搞懂WSL2默认只给1GB内存?Midnight的证明服务器需要4GB才能生成零知识证明,而系统不会报错,只会默默崩溃。
这不是一篇普通的安装指南。这是一个真实开发者用Windows笔记本搭建Midnight开发环境的全过程,包括那些官方文档不会告诉你的坑。
为什么Midnight逼你用Linux
Midnight的工具链——Compact编译器、证明服务器、全套组件——都是Linux二进制文件。Windows原生不运行。没有例外。
作者的选择是WSL2(Windows Subsystem for Linux,Windows的Linux子系统)。这不是虚拟机,是Windows内嵌的完整Linux环境。装完你能拿到真正的Ubuntu终端、全套Linux开发工具,以及Midnight开发所需的稳定底座。
微软有官方WSL2启用文档。作者建议:先去那边把WSL装好、Ubuntu跑起来,再回来看这篇。
Ubuntu 24.04 LTS:从商店到第一道门槛
打开Microsoft Store,搜索Ubuntu,选24.04 LTS版本,点击获取。
装完从开始菜单启动。第一次会要求创建Linux用户名和密码。
这里有个反直觉的设计:输密码时屏幕什么都不显示。这是Linux的默认行为,不是bug。盲打完按回车就行。
验证WSL2是否生效,打开PowerShell执行:
wsl --list --verbose
看到Ubuntu且Version为2,就对了。如果是Version 1,执行:
wsl --set-default-version 2
内存配置:作者最想让你提前知道的步骤
这是全文最关键的配置,也是最容易被忽略的。
WSL2默认分配1GB内存。Midnight证明服务器生成ZK证明(零知识证明)至少需要4GB。跳過这一步,服务器会启动,但会在证明过程中无声崩溃,或者给出完全误导性的错误信息。
作者的原话:「I learned this the hard way」——硬踩出来的经验。
在Windows用户目录创建.wslconfig文件。PowerShell执行:
notepad "$env:USERPROFILE\.wslconfig"
写入配置:
[wsl2]
memory=8GB
processors=4
swap=3GB
localhostForwarding=true
机器内存不足16GB的自行调整。作者标出的底线是memory=4GB,再低就不稳了。
保存后重启WSL:
wsl --shutdown
重新从开始菜单打开Ubuntu。
基础工具链:从curl开始
一切从curl起步。这是下载其他所有组件的入口。
作者在WSL Ubuntu环境下的第一条命令:
sudo apt update && sudo apt install -y curl
后续步骤涉及Node.js、Rust、Midnight特定的CLI工具安装,以及Compact编译器的配置。但原文在此处截断,未提供完整命令序列。
这件事为什么值得Windows开发者关注
Midnight是Cardano生态的零知识证明侧链,主打数据保护型智能合约。它的技术栈选择(Linux-only工具链)反映了一个趋势:硬核加密基础设施正在放弃跨平台兼容的包袱,把资源集中在单一环境的稳定性上。
对Windows开发者来说,WSL2不是退路,是主航道。作者的经历证明,只要绕过内存配置这个隐形门槛,WSL2能提供接近原生Linux的开发体验。而那个「1GB默认内存」的设计,本质上是微软对轻量级使用场景的假设,与ZK证明计算的高资源需求之间的错配。
如果你正在评估Midnight或者其他ZK链的开发接入成本,这篇实录的价值在于:它把「环境搭建」从文档里的15分钟拉长到真实的数小时调试,并把那些沉默的失败点标了出来。省下的可能是你凌晨两点对着无错误日志的终端发呆的时间。
热门跟贴