You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行flask deploy报OSError:未找到nacl lib/libsodium库怎么办

问题现象

基于Python+Flask在PyCharm中创建项目,执行flask deploy命令时触发报错:

OSError: Could not locate nacl lib, searched for libsodium
报错根因

项目依赖的PyNaCl库运行需要底层libsodium(又称nacl)动态链接库支持,当前运行环境未安装该系统库,或库安装路径未被Python解释器识别,就会抛出该错误。

解决步骤
  1. 安装对应环境的libsodium依赖并重装PyNaCl
    根据你使用的操作系统执行对应命令:
  • Windows:直接执行命令重装带预编译二进制的PyNaCl包即可,无需单独安装系统库
    pip install --force-reinstall pynacl
    
  • macOS:先通过Homebrew安装系统层libsodium,再重装PyNaCl
    brew install libsodium
    pip install --force-reinstall pynacl
    
  • Ubuntu/Debian系列Linux:先通过apt安装系统依赖,再重装PyNaCl
    sudo apt update && sudo apt install -y libsodium23 libsodium-dev
    pip install --force-reinstall pynacl
    
  • CentOS/RHEL系列Linux:先通过yum安装系统依赖,再重装PyNaCl
    sudo yum install -y libsodium libsodium-devel
    pip install --force-reinstall pynacl
    
  1. 核对PyCharm的解释器配置
    新手最容易踩环境不匹配的坑,按以下步骤检查:
  • 打开PyCharm Settings > Project: 你的项目名 > Python Interpreter,确认当前选中的解释器是项目实际使用的解释器(如果是新建项目默认创建的venv虚拟环境,路径一般在项目目录下的venv/bin/python(macOS/Linux)或venv\Scripts\python.exe(Windows))
  • 最稳妥的安装方式是直接点击PyCharm底部的Terminal面板,在弹出的命令行里直接执行上面的安装命令,这个面板会自动激活当前项目绑定的虚拟环境,不会出现包装到其他环境的问题
  • 安装完成后,终止之前运行失败的flask deploy进程,重新执行命令即可
  1. 残留问题排查
    如果完成以上步骤还是报错,先在当前项目的Python环境中执行import nacl验证:
  • 如果执行该导入语句就报同样的找不到libsodium错误,说明系统找不到libsodium的库路径,把libsodium的安装目录添加到系统环境变量:Linux/macOS加到LD_LIBRARY_PATH,Windows加到PATH,添加完成后重启PyCharm让环境变量生效
  • 如果导入不报错,检查Flask部署配置里有没有硬编码的库路径,删除错误的路径配置即可

提示:部分Linux发行版的软件源中PyNaCl包没有内置预编译的libsodium二进制,必须先安装系统层的libsodium-dev包才能正常编译安装PyNaCl,不要跳过系统依赖安装步骤直接装Python包。

内容的提问来源于stack exchange,提问作者Passang Lhamo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 19:18:23