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

树莓派OS编译带OpenSSL的Python3.11时_ssl模块缺失问题排查

解决Python3.11编译后无法导入_ssl模块的问题

核心问题:指定的OpenSSL路径错误

你用的./configure --with-openssl=/usr/bin/openssl指向的是OpenSSL的可执行文件,而Python编译需要的是OpenSSL开发库的安装路径(包含头文件和静态/动态库的目录),不是二进制执行文件的路径。

具体修复步骤

  • 安装OpenSSL开发依赖包
    先确保系统安装了OpenSSL的开发组件,不同发行版命令不同:

    • Debian/Ubuntu系:sudo apt-get install libssl-dev
    • RHEL/CentOS系:sudo yum install openssl-devel
    • Fedora:sudo dnf install openssl-devel
  • 使用正确的configure参数
    若开发库安装在系统默认位置,无需手动指定路径,直接执行:

    ./configure --enable-optimizations
    

    若OpenSSL是手动编译安装的非默认路径(比如/usr/local/openssl),再指定路径:

    ./configure --enable-optimizations --with-openssl=/usr/local/openssl
    
  • 检查Setup文件中的ssl配置
    打开Python源码目录下的Modules/Setup文件,找到以下几行,确保没有被注释(去掉开头的#):

    _ssl _ssl.c \
            -DUSE_SSL -I$(OPENSSL)/include -I$(OPENSSL)/include/openssl \
            -L$(OPENSSL)/lib -lssl -lcrypto
    

    保存后再重新编译。

  • 重新编译安装
    先清理之前的编译残留:

    make clean
    

    然后编译安装(用altinstall避免覆盖系统自带Python):

    make -j$(nproc)
    sudo make altinstall
    
  • 验证结果
    运行Python3.11的REPL,执行import ssl,若未报错,可进一步检查版本:

    import ssl
    print(ssl.OPENSSL_VERSION)
    

    正常情况下会显示你安装的OpenSSL版本(OpenSSL 1.1.1n 15 Mar 2022)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 12:07:06