Ubuntu 25编译Python2.7.4缺失math模块及pip安装问题求助
解决Ubuntu 25编译Python2.7.4缺失math模块问题
math模块是Python的内置C扩展模块,编译时未正常生成通常是因为缺少编译依赖或配置参数错误,按以下步骤重新编译并修复:
1. 清理旧的Python2.7安装
先移除之前编译安装的Python2.7文件,避免冲突:
sudo rm -rf /usr/local/lib/python2.7 /usr/local/bin/python2.7 /usr/local/bin/python2
2. 安装编译依赖
Ubuntu 25默认缺少Python2.7编译所需的基础库,执行以下命令安装:
sudo apt update && sudo apt install build-essential libncurses5-dev libgdbm-dev libnss3-dev libreadline-dev libffi-dev zlib1g-dev libssl-dev
注:如果遇到libssl-dev版本过高导致Python2.7编译失败,可额外安装兼容的旧版SSL库(若Ubuntu 25仓库无对应包,需自行编译OpenSSL 1.1.x版本后指定路径编译Python)
3. 重新编译Python2.7.4
进入Python2.7.4源码目录,先清理之前的编译残留:
cd ~/Python-2.7.4 make clean
执行配置命令,启用共享库(确保扩展模块能正常加载):
./configure --prefix=/usr/local --enable-shared
编译并安装(用altinstall避免干扰系统默认Python):
make -j$(nproc) sudo make altinstall
4. 验证math模块
执行以下命令检查math模块是否正常:
python2.7 -c "import math; print(math.pi)"
若输出3.141592653589793则说明模块正常。
5. 安装适配Python2.7的pip
注意:默认的get-pip.py已不再支持Python2.7,需使用专门的版本:
curl -O https://bootstrap.pypa.io/pip/2.7/get-pip.py python2.7 get-pip.py
完成以上步骤后,即可正常使用pip安装Python2.7依赖,也能运行依赖Python2的npm命令。
内容的提问来源于stack exchange,提问作者Bryan
相关产品推荐
相关产品推荐

