CentOS6.9默认安装的python版本为2.6.6,若想安装python3以上版本,只能手工编译安装

下面介绍Python-3.7.0版本的手动编译并安装的步骤

1、下载Python-3.7.0的源码包

wget -c https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz

2、由于pip3工具需要使用openssl,且openssl的版本也必需1.0.2以上版本

CentOS6.9系统默认的openssl版本为1.0.1e版本

然而 yum install openssl openssl-devel 的方式也无法升级到1.0.2版本

那也只能手动编译并安装

下载openssl-1.1.1b.tar.gz新版本的源码包

wget -c https://www.openssl.org/source/openssl-1.1.1b.tar.gz

3、先编译安装openssl1.1.1b

解压tar -zxvf openssl-1.1.1b.tar.gz

cd openssl-1.1.1b

./config --prefix=/usr/local/openssl    # 指定安装目录为/usr/local/openssl

make && make install (耗时比较长,需要耐性等待)

编译完成后需要拷贝库文件

cp /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1

cp /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1

并替换

rm -rf /usr/bin/openssl

重新软链接 ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl

4、解压 Python-3.7.0.tgz 源码包,然后进行配置编译

tar -zxvf Python-3.7.0.tgz

./configure --prefix=/usr/local/python3 --with-http_ssl_module  --with-openssl=/usr/local/openssl

make (耗时比较长,需要耐性等待)

make install

1)出现如下错误时需要yum安装 yum -y install libffi-devel tk-devel

然后还需要从头开始开始编译

./configure --prefix=/usr/local/python3 --with-http_ssl_module  --with-openssl=/usr/local/openssl

make (耗时比较长,需要耐性等待)

make install

出现如下提示,说明编译安装成功

5、创建软链接

ln -s /usr/local/python3/bin/python3 /usr/bin/python3

ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

接下来验证 python3、pip3 能否直接运行

6、用pip3安装uwsgi测试一下

pip3 install uwsgi

pip3 install uwsgi 直接安装提示SSL证书问题

pip3 install --trusted-host files.pythonhosted.org uwsgi     # 设为信任站点

安装后也创建软链接

ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi

7、不能每次pip安装软件后都手动创建软链接,可以通过修改PATH系统变量的方式

vim /etc/profile

在最后输入以下内容

PATH=$PATH:/usr/local/python3/bin

export PATH

source /etc/profile     # 使配置生效

CentOS6.9下手动编译并安装Python3.7.0的更多相关文章

  1. centos6/7 下升级openssl并安装python3

    今天是2019年的最后一天了,看了看自己今年写的随笔就一篇,实在有点少得可怜,就想着趁现在有点时间就再写一篇,^_^ centos6 或者centos 7 python 默认都是安装python 2 ...

  2. Python3.7源码在windows(VS2015)下的编译和安装

    Python3.7源码在windows(VS2015)下的编译和安装 下载官方源码,使用vs2015(WIN10SDK),最python3.7.0的源码进行编译,编译出不同的版本(release,de ...

  3. centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'

    centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'的解决办法 3.7版本需要一个新的包libffi-de ...

  4. Linux环境(服务器)下非root用户安装Python3.6

    Linux环境(服务器)下非root用户安装Python3.6 在管理实验室集群时候,遇到的问题--非root用户在搭建自己环境时候,如何搭建. 注意: root用户的根目录是root,非root用户 ...

  5. Linux下安装Python3.3.0

    Linux下安装Python3.3.0_路易_新浪博客 Linux下安装Python3.3.0 (2013-01-08 11:45:37)

  6. ACE-6.1.0 linux 下的编译与安装步骤

    ACE-6.1.0 linux 下的编译与安装步骤  引用至http://www.cnblogs.com/liangxiaxu/archive/2013/03/07/2948417.html 1.从  ...

  7. fedora下手动编译安装vim

    据说手动编译安装可以更适合自己的电脑哦- 1.首先,我门要下载源文件,下载地址:ftp://ftp.vim.org/pub/vim/unix/ 选择一个最新版本,我这里选择的是 vim-7.4.tar ...

  8. Linux下手动编译shogun

    手动编译shogun,如果按照直接按照官网上的步骤进行,会踩非常多的坑,下面分享一下在下的编译过程,希望能为阁下提供些许借鉴. 1. git clone https://github.com/shog ...

  9. [转] Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置

    from:  http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/3003278.html 如果要在Linux上做j2ee开发,首先得 ...

随机推荐

  1. 远程控制分析之VBS编码转换

    简介 分析这种VBS简单chr()函数编码的脚本技巧.只需要把vbs的execute()函数换成信息输出到控制台(dos窗口)函数就可以了. WSH.Echo "print your mes ...

  2. Spring Cloud 微服务技术整合

    微服务架构风格是一种使用一套小服务来开发单个应用的方式途径,每个服务运行在自己的进程中,并使用轻量级机制通信,通常是HTTP API,这些服务基于业务能力构建,并能够通过自动化部署机制来独立部署,这些 ...

  3. Swarm 集群并用 Portainer 管理

    https://blog.csdn.net/zhrq95/article/details/79430284 使用docker-proxy代理服务(所有节点): docker pull docker.i ...

  4. docker添加mongo4.0.3并配置复制集

    1.创建docker 具体略过 自行百度 2.创建数据持久化目录文件(/data/mongo0是个例子 命名随意)  拉取mongo docker pull mongo:4.0.3 3.启动容器 do ...

  5. 创建企业级地理数据库报错:ORA-01455

    环境: Oracle Server : 11.2.0.3 (x64) Oracle Client  : 11.1.0.6 (x32) Arcgis Desktop : 10.3 在该环境下执行 &qu ...

  6. SpringBoot系列教程web篇之全局异常处理

    当我们的后端应用出现异常时,通常会将异常状况包装之后再返回给调用方或者前端,在实际的项目中,不可能对每一个地方都做好异常处理,再优雅的代码也可能抛出异常,那么在 Spring 项目中,可以怎样优雅的处 ...

  7. Maven手动导本地jar到项目

    第一步:先把目标jar安装在本地,下面是安装到本地的步骤:在cmd命令中,输入:mvn install:install-file -Dfile=C:\Users\Ter\Desktop\jqd_doc ...

  8. IDEA中MavenWeb项目没有新建servlet文件

    解决方案: https://blog.csdn.net/Delicious_Life/article/details/89515363

  9. KepServerEX读写三菱PLC,车间现场测试记录,带你了解【数据采集的困境】的前世与今生

    1.不了解KepServerEX 的鞋童,可以先了解一下OPC UA,OPC UA服务端.我们当前项目读写三菱PLC是自己写的类库,但我感觉调用不够方便灵活,工作之余用OPC UA方式尝试一下 2.数 ...

  10. 【EBS】取数SQL-平均成本更新的物料事务处理追溯到应付发票

    SELECT hou.name,--组织 aia.invoice_num,--发票编号 msib.segment1,--物料编码 mmt.transaction_id--物料事务处理 FROM mtl ...