前言:
小编今天折腾了一天,整个Python3 人工智能开发包。卡在pip 包管理器上大半天。找遍大部分资料,就搞不懂为嘛每篇文章就只写一个片面的知识点就不能汇总一下嘛。下面来啦,小编来整理一下,避免下次找不到了。
微信公众号原文
第一步下载安装环境
wget https://www.python.org/ftp/python/3.11.0/Python-3.11.0.tgz
第二步安装依赖安装
这里有好几个地方需要注意一下。
1、libffi-devel 依赖库没安装会影响 ctypes 报错也就是小编今天遇到的问题之一
ModuleNotFoundError: No module named ‘_ctypes‘
2、openssl-devel 依赖库没有安装或者版本过低也会导致HTTPS请求需要SSL验证。安装python3.7 以上的版本还需要高于或者等于1.1.1版本。 openssl 升级 这也是遇到的问题二
2.1、版本要求及openssl升级
linux系统下:OpenSSL 1.0.2 或1.1以上,1.0.1不支持了。
通过openssl version
查看版本信息
yum -y install gcc
yum -y install zlib*
yum -y install libffi-devel
yum -y install openssl-devel
第三步:安装编译
1、检查pyOpenSSL模块是否安装
pip/(或者)pip3 list 检查已安装模块 (pip 系统默认是2.7 pip3 自定义版本)
如未安装,通过pip/pip3 install pyOpenSSL 安装
2、2023-10-18 这里补充一下在pip3 install pyOpenSSL 安装之前需要SSL模块。也就是说openSSL 需要提前安装
wget https://github.com/openssl/openssl/archive/OpenSSL_1_1_1d.tar.gz
tar -zxvf OpenSSL_1_1_1d.tar.gz
cd openssl-OpenSSL_1_1_1d
./config --prefix=/usr/local/openssl // 指定安装路径
make && make install
替换当前系统的旧版本 openssl 「先保存原来的」
mv /usr/bin/openssl /usr/bin/openssl.old
mv /usr/lib64/openssl /usr/lib64/openssl.old
mv /usr/lib64/libssl.so /usr/lib64/libssl.so.old
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/openssl/include/openssl /usr/include/openssl
ln -s /usr/local/openssl/lib/libssl.so /usr/lib64/libssl.so
echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
ldconfig -v // 建立动态链接
这里的安装路径很重要。小编在这里耗费了不少时间找一个路径和下面的python ssl 关联。因为版本原因python 需要本地最新版本版本。
tar -zxvf Python-3.11.0.tgz
cd Python-3.11.0
./configure --enable-optimizations --with-ssl --prefix=/usr/local/python-3.11.0
--with-openssl=/usr/local/openssl
make && make install
--with-openssl 执行本地openssl 安装路径
--with-ssl 用户HTTPS加密扩展请求
--enable-optimizations 用于优化编译;
--prefix=/usr/local/python-3.11.0 用于以结构化的方式,将 Python 安装到 /usr/local/python-3.11.0。
在这里也踩坑。有些文章没有把这些写全面。只展示了部分,导致编译环境有些功能使用不了。得重新编译。
2024.2.19更新 随着Python 版本升级,使用yum 安装的GCC的一般版本是4.8.5。在编译安装的时候会提示编译报错。需要升级GCC的版本。
python3 -V 查看版本
echo PATH='/usr/local/python/bin:$PATH' >> /etc/profile
# 将python安装路径追加到配置文件中source /etc/profile
# 让配置文件重载生效
第四步更新镜像源:
以为安装好了就完成了吗,还是 too young and too simple. pip3 包管理器还得更换国内的数据源。
Linux:
cd ~ # 进入家目录
mkdir .pip # 新建.pip隐藏文件夹
cd .pip # 进入.pip隐藏文件夹
touch pip.conf # 新建pip.conf文件
vim pip.conf # 用vim编辑pip.conf文件,内容与Windows下pip.ini文件的内容一样
:wq # 保存退出
文件内容如下
[global]
index-url = https://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host = mirrors.aliyun.com
查案映像地址:
pip3 config list
其他国内镜像源
中国科学技术大学 : https://pypi.mirrors.ustc.edu.cn/simple
豆瓣:http://pypi.douban.com/simple/
阿里云:http://mirrors.aliyun.com/pypi/simple/
总结:
本文内容简明概要的描述安装Python3 的整个流程,避免入门小白,翻阅各种碎片化的文章。花费大量精力在安装和编译上。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。