opensuse编译安装Python3后缺少zlib

前言

由于opensuse包管理安装的是python2.7,而最近我又用编译安装了python3。

之后使用virtualenv虚拟环境指定创建python3版本的隔离环境时就出现了错误,报缺少zlib模块。

尝试过直接用yzpper安装zlib会报找不到这个模块,而重新编译安装python3时指定--with-zlib也是找不到。所以需要对zlib也进行编译安装。

编译安装

官网http://www.zlib.net/下载最新版本的zlib源码文件,我下载的是zlib-1.2.11.tar.gz

安装zlib:

tar xzvf zlib-1.2.11.tar.gz

cd zlib-1.2.11

建议默认路径安装,编译三部曲:

./configure
make
make install

python导入zlib

如下图,编译安装完成zlib后,进python3测试己经可能正常导入zlib包。

zlib安装完后,libz.a/usr/local/lib/,opensusezlib.h默认放在/usr/local/include/中。

其它linux的zlib.h文件一般在/usr/include中。

重新编译python并指定zlib

如果还发生少数导入不成功,或你想直接软链接升级python旧版本的,可能需要重新编译python。

进入Python源码文件目录,重新编译Python

sudo ./configure --enable-optimizations --prefix=/usr/local/python-3.5.6 --with-zlib=/usr/include

或者:

./configure --enable-optimizations --prefix=/usr/local/python-3.5.6 --with-zlib-dir=/usr/local/lib

都可以完成python对zlib库的支持,在python源码中直接import zlib即可使用zlib了。

2018-8-15 铁乐与猫

end

opensuse编译安装Python3后缺少zlib的更多相关文章

  1. 编译安装python3.6后pip3无法安装模块问题处理

    编译安装python3.6之后,使用pip3命令安装第三方库效果如图所示: pip is configured with locations that require TLS/SSL, however ...

  2. OSX编译安装Python3及虚拟开发环境Virtualenv

    0X00.前言 因为工作原因,最近主要做Python开发,刚好电脑系统重装之后所有的东西都需要重新配置.此文主要记录OSX下通过源码编译安装Python3以及安装虚拟开发环境Virtualenv. 0 ...

  3. 编译安装Python3

    转发https://www.cnblogs.com/resn/p/10135953.html 编译安装Python3 安装依赖 yum install -y ncurses-libs zlib-dev ...

  4. centos7编译安装Python3所需要的库(模块)依赖

    在centos中编译安装python3环境,第三方的库 实战的编辑环境: 1.VMware虚拟机   2.centos7 依赖包经过百度搜集以及之前安装Python3报错搜集(centos7反反复复安 ...

  5. CentOS 7编译安装Python3.7.X

    在CentO S上通过编译安装Python3.7,添加python3软链,并使用python3. 环境 安装环境如下: Windows 10 Pro VMWare Workstation 15 Pro ...

  6. Linux 编译安装python3

    编译安装python3的步骤 1.很重要,必须执行此操作,安装好编译环境,c语言也是编译后运行,需要gcc编译器golang,对代码先编译,再运行,python是直接运行yum install gcc ...

  7. 安装python3后使用pip和pip3的区别是什么?

    安装python3后使用pip和pip3的区别是什么? 1.其实这两个命令效果是一样的,没有区别: (1)比如安装库numpy,pip3  install  numpy或者pip  install   ...

  8. redhat 7.6 安装Python3后配置 yum pip3 升级openssl

    安装python3后需要重新配置yum 配置yum vim /usr/bin/yum #! /usr/bin/python #修改前#! /usr/bin/python2 #修改后 vim /usr/ ...

  9. python3 安装 #zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz RHEL 8 install Python 3 or Python 2 using yum 编译安装 python3.7.4 . OpenSSL 1.0.2 or 1.1. Consequently, OpenSSL 0.9.8 and 1.0

    #zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz Modules/Setup.dist https://askubuntu ...

随机推荐

  1. java web 手动部署项目步骤

    java Web 手动部署项目步骤 1 在tomcat下面的webapps下面建立需要部署的文件夹(eg:demo);2 在demo下建立 WEB-INF WETA-INF src 文件夹;3 在sr ...

  2. 3D转弯保护区长啥样?

    3D转弯保护区长啥样? 2015-12-06 刘崇军 风螺旋线 在课本中.规范中看到的转弯保护区一直是平面化的样子.我们知道副区是由主区外扩而成,但具体怎样精确外扩无从知晓:我们知道主区边界至副区边界 ...

  3. webpack版本兼容性问题错误总结,耽误半天学习

    今天看了掘金上的一篇文章(https://juejin.im/post/5bf61082f265da616a474b5c#comment),想搞搞webpack拆分js. 开搞 文章中用了webpac ...

  4. 【转】Java工程师成神之路

    针对本文,博主最近在写<成神之路系列文章> ,分章分节介绍所有知识点.欢迎关注. 一.基础篇 1.1 JVM 1.1.1. Java内存模型,Java内存管理,Java堆和栈,垃圾回收 h ...

  5. 数据结构:IO读写频繁的青睐,B树和B+树

    目录 B树 定义及特性 查找顺序 保持平衡 B+树 B+树的插入 使用场景 参考 今天学习B树和B+树,B树和B+树都是基于二叉树的衍生,对于二叉树不太了解的读者可以翻看<数据结构:二叉树> ...

  6. 算法时间复杂度、空间复杂度(大O表示法)

    什么是算法? 计算机是人的大脑的延伸,它的存在主要是为了帮助我们解决问题. 而算法在计算机领域中就是为了解决问题而指定的一系列简单的指令集合.不同的算法需要不同的资源,例如:执行时间或消耗内存. 如果 ...

  7. 跨域CORS 头缺少 'Access-Control-Allow-Origin'

    今天遇到一个跨域的问题找了好久的资料错误如下: 解决之后: 控制层 加上这两行代码就好啦: @RequestMapping(value = "",method = RequestM ...

  8. 卡片游戏(hdu4550)贪心

    卡片游戏 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others) Total Submi ...

  9. HDU1007(最近点对)

    Quoit Design Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Tot ...

  10. 排序算法(1)--Insert Sorting--插入排序[1]--straight insertion sort--直接插入排序

    作者QQ:1095737364    QQ群:123300273     欢迎加入! 1.基本思想 将一个记录插入到已排序好的有序表中,从而得到一个新,记录数增1的有序表.即:先将序列的第1个记录看成 ...