当前位置: 首页 > 面试题库 >

通过zlib支持从源代码构建Python

狄彬彬
2023-03-14
问题内容

在Ubuntu 12.04上从源代码构建Python 3.2.3时,zlib模块不可用。

我从python.org下载了官方的源代码发行版,并尝试使用以下命令来构建和安装它。

tar xfa Python3.2.3.tar.bz2
cd Python-3.2.3
./configure --prefix=/opt/python3.2
make
sudo make install

make命令输出包括以下内容。

Python build finished, but the necessary bits to build these modules were not found:
_curses            _curses_panel      _dbm            
_gdbm              _sqlite3           _ssl            
_tkinter           bz2                readline        
zlib

运行make install并启动解释器后,zlib无法导入模块。

我确认该zlib1g-dev软件包已安装在我的系统上。

我也发现了类似的问题,建议将--with-zlib标志添加到./configure命令中。但是,这将返回一个错误,它是无法识别的选项,并且无效。


问题答案:

解决方案是安装Ubuntu软件包dpkg-dev

sudo apt-get install dpkg-dev

原因在这里解释。

简而言之,Ubuntu的最新版本不存储libz.so在标准/usr/lib位置,而是存储在特定于平台的位置。例如,在我的系统上是在/usr/lib/x86_64-linux- gnu。这样可以防止Python的构建系统找到它。

dpkg-dev软件包将安装dpkg-architecture执行文件,从而使Python能够找到必要的库。

最初的问题是关于Python 3.2.3。我还下载了Python 2.7.3,并确认存在相同的问题,该解决方案也适用于它。



 类似资料:
  • 我想尝试对java.lang中的java库进行更改,最终还可能对其他包进行更改。这意味着不使用,我希望至少能够分离出java.lang并编译它们。 如果使用rt.jar,则不可能在java.lang中编辑类的源代码,因为它们已经在rt.jar中找到了。 我在Mercurial中找到了repo:http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/file/tip/s

  • 我想安装Python 3.4.6,但它只有源代码格式。 Python官方网站上的安装选项是Gzip'd源tarball和XZ压缩源tarball。我以前从未以这种方式安装过Python,所以我不知道该怎么办。我如何安装Python和我下载什么文件? https://www.python.org/downloads/release/python-346/

  • 所以,我想创建一个新的BouncyCastle 1.47罐子,它不是OSGi罐子。我已经从他们的站点下载了源代码(JDK1.5-1.7的“JCE with provider and lightweight API”下的bcprov-jdk15on-147.tar.gz文件),但是当我提取它和源代码时,我看不到构建脚本。看看他们的维基,他们说这应该是一个使用ant的简单案例。 以前有人这样做过吗,能

  • 原文:Building from source 此处给出了从源代码构建NumPy的一般概述,以及单独给出的特定平台的详细说明。 先决条件 构建 NumPy 需要安装以下软件: Python 2.7.x、3.4.x 的版本或是最新版本。 在Debian和其衍生版本(Ubuntu)中需要:python,python-dev(或python3-dev)。 在Windows上:www.python.org

  • 问题内容: 我已经从源代码安装了python 2.6,后来又以某种方式错误地从包管理器中安装了另一个python 2.6。 我找不到卸载从源代码构建的python的方法,这可能/容易吗? 运行ubuntu 10.04。 问题答案: 您可以使用checkinstall删除Python。这个想法是: 安装checkinstall 使用checkinstall对您的Python安装进行详细介绍 使用删除

  • 因此支持“*”,但“>”不起作用。我想使用这个'>'通配符。对此有什么变通办法吗?