Ubuntu14.04安装Python3.8及配置支持SSL(HTTPS)功能问题

Ubuntu14.04编译安装Python3.8及配置支持SSL(HTTPS)功能

一、系统环境介绍

Ubuntu系统

二、安装编译Python3.8需要的依赖环境

sudo apt install -y wget build-essential libreadline-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev libffi-dev zlib1g-dev

等待自动下载、安装完成即可(整个大概需要200多MB,如果下载较慢,可以换成清华源再下载,这样会快很多)

安装完后,最后部分输出如下,一切正常:
在这里插入图片描述

三、编译安装libressl构建【Python支持SSL(HTTPS功能)】的所需环境

1、下载源码(这里以libressl-3.0.2为例)

wget https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.0.2.tar.gz --no-check-certificate

在这里插入图片描述

2、解压源码

tar -zxvf libressl-3.0.2.tar.gz

解压完后,会得到一个源码目录,效果如下:
在这里插入图片描述

3、配置安装路径

sudo mkdir -p /usr/local/ssl/libressl

4、配置编译参数

cd libressl-3.0.2

进入目录后,就瞄一眼,哈哈:
在这里插入图片描述

执行配置:

./configure --prefix=/usr/local/ssl/libressl

–prefix指定的是libressl安装的路径,可以自由更改,后面需要用到这个路径

配置完成后,无报错,最后输出效果如下:
在这里插入图片描述

5、编译、安装

sudo make && sudo make install

注意这是两个双sudo操作,此过程需要等一小会儿

过程无报错,最后输出如下:
在这里插入图片描述

6、将编译安装生成的libressl相关库添加到系统模块共享库中

注意:因为需要把内容输出到系统配置,因此需要切换到root用户,再执行,否则会报无权限错误。

su root
echo /usr/local/ssl/libressl/lib >> /etc/ld.so.conf.d/libressl-3.0.2.conf

效果如下(注意图中红圈部分):
在这里插入图片描述

7、验证需要的库已经添加成功

sudo ldconfig -v

输出如下:
在这里插入图片描述
可以看到,上图红圈部分就是libressl的相关依赖库。以上红圈输出就表示编译python3.8中支持ssl功能需要用到的libressl库已经添加成功。

四、编译、安装Python3.8

1、下载Python3.8源码(这里以Python3.8.6为例)

退回到用户目录

cd ~
wget https://www.python.org/ftp/python/3.8.6/Python-3.8.6.tgz

下载完成后,效果如下:
在这里插入图片描述

2、解压源码

tar -xvzf Python-3.8.6.tgz

3、配置编译参数(重点)

进入源码目录

cd Python-3.8.6

执行配置

./configure --prefix=/usr/local/python/python3.8 --with-openssl=/usr/local/ssl/libressl

这里–prefix路径是指定Python3.8安装的路径,–with-openssl的路径是刚刚上一步安装好的libressl的安装路径

过程无报错,最后输出如下:
在这里插入图片描述

4、编译、安装

sudo make &&  sudo make install

此过程需要等一小会儿

过程无报错,最后输出效果如下:
在这里插入图片描述

5、测试是否已经安装成功

因为上面配置步骤把python3.8的安装目录设置成 /usr/local/python/python3.8/ 了,而此目录也没有配置到系统环境变量PATH中,所以需要先切换到安装目录下的bin/:

cd  /usr/local/python/python3.8/bin/

然后ls,瞄一眼:
在这里插入图片描述
可以看到Python3.8已经安装成功到指定目录了

执行:

./python3.8 -V

输出如下:
在这里插入图片描述
可以看到输出的版本信息就是我们需要的Python 3.8。Good job!!!

进入Python3.8命令行,然后来一个经典的hello world打印:

./python3.8

在这里插入图片描述

一切OK,一切正常,Python 3.8 Go Go Go!!!!!

接下来我们来验收标题所说效果,也就是SSL(HTTPS)功能的测试。

那怎么测试呢?很简单,进入python3.8命令行终端,然后输入import ssl,回车:

1、如果无输出,表示SSL(HTTPS)功能正常有效;

2、如果报错输出,那SSL(HTTPS)功能模块不能用,那看看具体什么错误(这里一般是ModuleNotFoundError),看看有没有遗漏什么步骤。还不行的话,Google/Stackoverflow/CSDN/博客园/等着你,哈哈哈。

下面我们来测试一下:
在这里插入图片描述
输出无报错,Nice!!!

到这里就结束了,完美撒花~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


一些推荐的配置(非必须)

1、配置系统环境变量

因为我们配置的Python3.8的安装路径不在系统变量PATH中。
在这里插入图片描述
所以目前我们使用Python3.8,只能先切换到安装目录再执行,显然不是我们所期望的。

那么,我们可以将程序目录/usr/local/python/python3.8/bin添加到系统变量,这样我们就可以在任意路径使用Python3.8了

PATH=/usr/local/python/python3.8/bin:$PATH

执行后,再次在命令行输入python3.8,发现可以用了!!!:
在这里插入图片描述
也就是说,从现在起,我们可以在任何目录下使用Python3.8了,而不是需要切换到安装目录(bin/)再使用。Nice!!!!

2、配置Python3.8为系统默认Python程序

因为在我安装的Ubuntu 14.04服务器版系统中已经默认内置了python2.7和python3.4。那么

1)、在终端中输入python:在这里插入图片描述
打开的是Python2.7版本的。

2)、在终端中输入python3:
在这里插入图片描述
打开的是Python3.4版本的。

显然,现在系统默认的python程序是2.7版本的。那怎么把我们新安装的Python3.8版本设置为默认Python程序呢?这样做:

update-alternatives --list python

在这里插入图片描述
输出显示没有任何python版本添加到update-alternatives版本管理中。

那么我们就先将系统现在已经安装的python2.7,python3.4,python3.8都添加到update-alternatives中:

首先是Python2.7

whereis python2.7

在这里插入图片描述

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 100

这里的100是优先级值,值越大,优先级越高

执行效果:在这里插入图片描述
以此类推,分别添加Python3.4和Python3.8:

Python3.4:

whereis python3.4
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.4 200

Python3.8:

我们的Python3.8程序目录在/usr/local/python/python3.8/bin,所以

sudo update-alternatives --install /usr/bin/python python /usr/local/python/python3.8/bin/python3.8 300

添加完成后,我们新安装的Python3.8就变成了系统的默认Python版本了。我们可以测试一下,在控制台输入python,回车:
在这里插入图片描述
可以看到,我们进入的是新安装的Python3.8程序,优先级配置生效了,NICE!!!!!。

有道友可能会问,我现在有了Python2.7,Python3.4,Python3.8的版本了,如果我想自由的切换默认版本,应该怎么做?

好,不如我们回过头再次执行上面提到过的一个命令:

update-alternatives --list python

执行输出如下:
在这里插入图片描述
可以看到我们所有已经安装的Python版本刚刚都已经通过update-alternatives --install命令添加到了版本管理中,如果还有其他版本也是这么添加。

现在我默认版本是Python3.8,我想切换到Python3.4,怎么做?

执行:

sudo update-alternatives --config python

输出效果如下:
在这里插入图片描述
显而易见,输出说明了python3.8是默认的python版本。

这里就是可以选择版本作为默认版本的,然后我们输入2(对应版本就是python3.4),然后回车,这样我们就将Python3.4设置为默认版本,其他版本也是一样的操作。

来看看切换后效果:
在这里插入图片描述
完结撒花~


题外话

其实写这篇文章是因为我需要用到git-repo工具来拉取一些源码,然后怎么了~

欸,就是git-repo现在不支持python3.5以下的版本了,然后就想着安装python3.8的,在ubuntu14.04下,使用包管理工具怎么都安装不了python,什么源切换都试过了,也不行(我猜是墙的问题,有的源国内没有镜像)。

既然自动安装不行,那我手动还不行???

然后就开始搞啊搞啊搞啊了……,编译安装好了之后再次运行git-repo,报错……

说什么unkown url type https什么的,阿巴阿巴。

然后东找西找,又说这个问题,又说那个问题,其实就是python没有带ssl模块,也就是编译的时候没有配置ssl库。

当时搞了两个多小时,才搞好,也才有了这么文章。

So,值得记录。

如果觉得对你也有帮助,欢迎点赞,评论,收藏!!!Nice!!!!

  • 45
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Ubuntu 14.04安装方法有多种。首先,你可以从官方网站上下载Ubuntu Kylin 14.04.1的安装文件,并按照官方提供的步骤进行安装。另外,你也可以选择安装Ubuntu Server版本,具体步骤如下: 1. 首先,下载Ubuntu Server 14.04的ISO镜像文件,并制作成系统盘。 2. 将制作好的系统盘插入计算机,并启动计算机。 3. 在Ubuntu界面中选择"Install Ubuntu Server",然后按"Enter"键继续安装。 4. 根据安装向导的提示,选择合适的语言、时区、键盘布局等选项。 5. 在磁盘分区界面,选择你想要安装Ubuntu的磁盘,并根据需要进行分区。你可以选择使用整个磁盘,或者手动设置分区。 6. 设置主机名、用户名和密码,这将是你登录系统时使用的凭据。 7. 在软件选择界面,选择你需要安装的软件包,或者使用默认选项。 8. 等待安装完成,然后重新启动计算机。 这样,你就可以成功安装Ubuntu 14.04了。请记住,安装过程中可能会有一些特定的步骤和配置,具体根据你的需求进行调整。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [ubuntu14.04安装方法汇总](https://blog.csdn.net/baobei0112/article/details/43083245)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [ubuntu server 14.04安装手册](https://blog.csdn.net/yugemengjing/article/details/86619066)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值