centos7 install python3.7 with problem and how to fix it.

问题如下:

configure: error: no acceptable C compiler found in $PATH
缺少gcc

zipimport.ZipImportError: can’t decompress data
缺少zlib,zlib-devel

No module named '_ctypes'
3.7版本需要一个新的包libffi-devel

yum install libffi-devel -y  

解决如下:

yum install gcc zlib zlib-devel -y
有关openssl的修复,python找不到ssl模块
安装模块
yum install openssl-devel -y
去掉注视
# Socket module helper for socket(2)
_socket socketmodule.c

# Socket module helper for SSL support; you must comment out the other
# socket line above, and possibly edit the SSL variable:
SSL=/usr/local/ssl
_ssl _ssl.c \
        -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
        -L$(SSL)/lib -lssl -lcrypto
有关zlib的修复
1  到python安装目录下,运行./configure

2  编辑Modules/Setup文件

    vim Modules/Setup

    找到下面这句,去掉注释

    #zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
重新编译python3.7
./configure --prefix=/usr/local/python3.7
make && make install

 建立软连接:

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

效果:

 顺便安装了Ipython:

pip3 install ipython  #这里必须解决上面ssl模块的问题
ln -s /usr/local/python3.7/bin/ipython /usr/bin/ipython

因为缺少sqlite数据库模块,还有个报错:

/usr/local/python3.7/lib/python3.7/site-packages/IPython/core/history.py:226: UserWarning: IPython History requires SQLite, your history will not be saved
  warn("IPython History requires SQLite, your history will not be saved")

解决方法:

yum install sqlite-devel -y
重新编译python3.7
这些坑相当头疼,所以提早把环境给装好

Ipython效果:

<!-- p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #000000; background-color: #ffffff} span.s1 {font-variant-ligatures: no-common-ligatures} -->

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏张戈的专栏

修改Apache的超时设置,解决长连接请求超时问题

某日,组内后台开发找到我,问我们的 WEB 服务器超时设置是多少。他反馈的问题是,有一个 VLAN 切换任务 cgi 接口经常返回 504 网关超时错误,要我分...

1.2K80
来自专栏数据之美

15 个简单、有趣而实用的 单行 HTTP Server

不少语言或服务开发框架都内置了简单的 Web Server 供我们方便的调试使用。比如有时候我们需要调试单个 PHP 页面而不想搭建一套完整的 PHP 环境,亦...

258100
来自专栏Android 研究

android本地lib通过gradle上传到本地nexus上

在apply plugin: 'com.android.library'下添加如下内容:

25140
来自专栏坚毅的PHP

python日志按时间切分-----TimedRotatingFileHandler

原生loggging类+ TimedRotatingFileHandler类 实现按day hour second 切分 原生loggging类+ Timed...

53360
来自专栏菩提树下的杨过

spring-boot 速成(1) helloworld

一、mac上安装 $ brew tap pivotal/tap $ brew install springboot 安装成功后,可在终端查看命令行 ➜  ~ s...

23780
来自专栏菩提树下的杨过

windows 2003 32位系统能支持的最大内存数

先要开启PAE功能,方法如下: 打开 Boot.ini 文件,然后将 /PAE 参数添加到 boot.ini中,如以下所示: multi(0)disk(0)rd...

23080
来自专栏Seebug漏洞平台

漏洞精选第二期--浏览器专题

在Seebug 精选漏洞第一期,小s为大家挑选了一些硬件设备以及工控类型漏洞,受到了大家的好评。大家期待的第二期现在来啦,我们此次挑选了浏览器相关的经典漏洞,涉...

35250
来自专栏Hadoop实操

如何使用Java API访问CDH的Kudu

54960
来自专栏Objective-C

React Native 部署开发环境

60850
来自专栏编程坑太多

react-native组建wechat

15730

扫码关注云+社区

领取腾讯云代金券