「我 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分钟拉长到真实的数小时调试,并把那些沉默的失败点标了出来。省下的可能是你凌晨两点对着无错误日志的终端发呆的时间。