一、下载工具包
我一般将python包安装到/usr/local/的文件夹下面,这里会存放安装包和安装的结果。也可以再加一个packeage的结果方便管理。
wget https://www.python.org/ftp/python/3.6.9/Python-3.6.9.tgz
解压指令
tar -xf Python-3.6.9.tar.xz
cd Python-3.6.9
下一步就是安装依赖
二、安装依赖
可以使用下面的命令安装一些依赖。如果没有安装pip安装会失败。
sudo apt-get install openssl
sudo apt-get install libssl-dev
sudo apt-get install lzma
sudo apt-get install liblzma-dev
# 有bug使用
sudo apt install zlib1g-dev
sudo apt install python3-virtualenv
sudo apt intall python3-pip
sudo apt-get install libbz2-dev
sudo yum install bzip2-devel
再删除原来安全的内容之后,直接看./configure配置之后,使用完之后使用下面的指令重新编译(在解压包的文件中,然后使用root指令指定配置路径)
# 推荐
sudo make -j 8
sudo make altinstall
# 不推荐
make & make install
三、安装python
--prefix是安装的位置,一般就是下载的地方。一般不进行软链接,因为使用的版本较多,所以都直接使用虚拟环境,自己的博客。
./configure --prefix=/usr/local/python3.6.9 --with-ssl-default-suites=openssl --enable-optimizations --disable-profiling
# 推荐
sudo make -j 8
sudo make altinstall
# 不推荐,因为使用标准,make install因为它会覆盖默认的系统 python3 二进制文件。
# sudo make & make install
四、问题
安装过程中会遇到以下的一些问题,如下所示(例子)
from pip._internal.cli.main import main
ModuleNotFoundError: No module named 'pip._internal.cli.main'
zipimport.ZipImportError: can't decompress data; zlib not available
ModuleNotFoundError: No module named '_ctypes'
出现了新的gcda的一个profiling提示。
profiling:/usr/local/pythonpackage/Python-3.7.5/Objects/listobject.gcda:Cannot open
profiling:/usr/local/pythonpackage/Python-3.7.5/Objects/funcobject.gcda:Cannot open
profiling:/usr/local/pythonpackage/Python-3.7.5/Objects/frameobject.gcda:Cannot open
profiling:/usr/local/pythonpackage/Python-3.7.5/Objects/floatobject.gcda:Cannot open
profiling:/usr/local/pythonpackage/Python-3.7.5/Objects/exceptions.gcda:Cannot open
profiling:/usr/local/pythonpackage/Python-3.7.5/Objects/call.gcda:Cannot open
profiling:/usr/local/pythonpackage/Python-3.7.5/Objects/bytesobject.gcda:Cannot open
profiling:/usr/local/pythonpackage/Python-3.7.5/Objects/boolobject.gcda:Cannot open
profiling:/usr/local/pythonpackage/Python-3.7.5/Modules/main.gcda:Cannot open
profiling:/usr/local/pythonpackage/Python-3.7.5/Programs/python.gcda:Cannot open
对解决的问题做了一个分类
- SSL问题
ssl open - 无pip模块
pip模块 - 无zip
zipimportError - 文件权限
文件权限 - 一些Ctype的报错
系统更新 - 安装过程
Linux下升级安装Python-3.6.9版本 - 朱小弟 - 博客园,参考目录编译过程就可以。 - profiling-*.gcda-dsiplay-stackoverflow 用于解决profiling提示的bug。
- python3.8。
内容简单,多安装几次就会很熟练,这里记录一下指令,后期使用可以直接复制。