安装PyNacl遇FileNotFoundError错误求助
解决PyNaCl安装时的FileNotFoundError问题
我之前也踩过这个PyNaCl安装的坑!这个错误的核心原因是PyNaCl在编译过程中需要依赖Windows SDK的库文件,但你的系统要么没装对应版本的SDK,要么SDK的路径没被Python的编译工具正确识别。下面是几个亲测有效的解决办法:
安装对应版本的Windows SDK
错误提示里明确提到找不到C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1\lib,说明系统缺少Windows SDK 8.1版本。你可以直接下载安装Windows SDK for Windows 8.1,安装时务必勾选「Windows SDK核心组件」以及对应你Python架构的lib文件(32位选x86,64位选x64)。安装完成后重启终端或IDE,再执行pip install pynacl试试。使用预编译wheel包跳过编译环节
如果不想折腾SDK的安装,最省心的方式就是直接用预编译好的wheel包。步骤如下:- 先安装wheel工具:
pip install wheel - 找到对应你Python版本和系统架构的PyNaCl wheel包(比如适配Python 3.10 64位的包后缀是
cp310-win_amd64.whl) - 下载后执行
pip install 你的wheel文件名.whl,完全绕开编译过程,直接完成安装。
- 先安装wheel工具:
手动指定SDK路径(适合有一定经验的用户)
如果你已经安装了Windows SDK 8.1但路径未被识别,可以手动配置环境变量:- 新建系统环境变量
LIB,添加路径C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1\lib\x86(或x64,根据你的Python位数选择) - 新建系统环境变量
INCLUDE,添加路径C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1\Include - 配置完成后重启命令行,再执行
pip install pynacl
- 新建系统环境变量
升级pip到最新版本
旧版本的pip可能存在依赖处理的bug,先执行python -m pip install --upgrade pip把pip升级到最新版,之后再尝试安装PyNaCl,说不定能自动解决依赖识别的问题。
内容的提问来源于stack exchange,提问作者Deviatenorm
相关产品推荐
相关产品推荐

