【Linux】安装Python3.11报错

文章目录

问题

centos系统使用make命令安装python 3.11.8时,报错了:

Python runtime state: initialized
Traceback (most recent call last):
  File "/usr/local/Python-3.11.8/Lib/site.py", line 73, in <module>
Fatal Python error: init_import_site: Failed to import the site module
Python runtime state: initialized
Traceback (most recent call last):
  File "/usr/local/Python-3.11.8/Lib/site.py", line 73, in <module>
    import os
  File "/usr/local/Python-3.11.8/Lib/os.py", line 29, in <module>
    from _collections_abc import _check_methods
SystemError: <built-in function compile> returned NULL without setting an exception
Fatal Python error: make[1]: *** [Python/frozen_modules/codecs.h] Error 1
make[1]: *** Waiting for unfinished jobs....
    import os
  File "/usr/local/Python-3.11.8/Lib/os.py", line 29, in <module>
    from _collections_abc import _check_methods
init_import_site: Failed to import the site module
Python runtime state: initialized
Traceback (most recent call last):
  File "/usr/local/Python-3.11.8/Lib/site.py", line 73, in <module>
SystemError: <built-in function compile> returned NULL without setting an exception
    import os
  File "/usr/local/Python-3.11.8/Lib/os.py", line 29, in <module>
    from _collections_abc import _check_methods
make[1]: *** [Python/frozen_modules/io.h] Error 1
SystemError: <built-in function compile> returned NULL without setting an exception
make[1]: *** [Python/frozen_modules/abc.h] Error 1
make[1]: Leaving directory `/usr/local/Python-3.11.8'
make: *** [profile-opt] Error 2

解决

在 CentOS 系统上使用 make 命令安装 Python 3.11.8 时遇到错误,这通常是由于编译环境问题、依赖项缺失或不兼容的软件包引起的。为了解决这个问题,请按照以下步骤进行操作:

  1. 确保开发工具包已安装
    编译 Python 需要一系列的开发工具和库。您可以使用以下命令安装它们:

    sudo yum -y groupinstall "Development Tools"
    sudo yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel gcc-c++
    
  2. 清理之前的构建尝试
    在尝试再次编译之前,清理之前的构建尝试可以避免遗留问题:

    make clean
    
  3. 检查 Python 源代码目录
    确保您在 Python 源代码的根目录下执行 make 命令。

  4. 指定配置选项
    在执行 make 命令之前,您可能需要使用 configure 脚本来指定安装路径和其他选项。例如:

    ./configure --prefix=/usr/local/python311
    
  5. 重新编译
    使用 make 命令重新编译 Python:

    make
    
  6. 安装
    如果编译成功,使用以下命令安装 Python:

    sudo make install
    
  7. 创建软链接

    rm -f /usr/bin/python3.11 && ln -s /usr/local/python311/bin/python3 /usr/bin/python3.11
    
  8. 验证安装
    安装完成后,验证 Python 是否正确安装:

    python3.11 --version
    

如果在尝试上述步骤后仍然遇到问题,请检查错误日志中提到的具体文件和行号,以获取更多线索。此外,您还可以尝试在 Python 的官方 issue 跟踪器或相关社区论坛上搜索错误信息,看看是否有其他用户遇到了类似的问题,并寻求帮助。

相关推荐

  1. Linux安装Python3.11

    2024-05-10 17:22:05       10 阅读
  2. Linux排查-安装PHP的remi库

    2024-05-10 17:22:05       21 阅读
  3. 安装Paddlehub

    2024-05-10 17:22:05       36 阅读
  4. python 安装 cv2 conda install PackagesNotFoundError

    2024-05-10 17:22:05       46 阅读
  5. Python BUG】anaconda安装Error:Cannot unpack file

    2024-05-10 17:22:05       14 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-05-10 17:22:05       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-10 17:22:05       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-10 17:22:05       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-10 17:22:05       20 阅读

热门阅读

  1. 5.Git

    5.Git

    2024-05-10 17:22:05      14 阅读
  2. Spring自动装配:解析原理与实践

    2024-05-10 17:22:05       10 阅读
  3. Python编程技巧(下篇)

    2024-05-10 17:22:05       9 阅读
  4. LInux 基础指令

    2024-05-10 17:22:05       8 阅读
  5. 【使用openpyxl对.xlsx文件增删改查】

    2024-05-10 17:22:05       11 阅读
  6. React 第二十三章 shouldComponentUpdate

    2024-05-10 17:22:05       10 阅读