什么是用于

时间:2015-06-23 11:54:12

标签: python cpython

我最近安装了lxml

在此之前,我必须为此安装所有依赖项。 所以我尝试安装liblxml2-devliblxslt1-devpython-dev (谷歌搜索了lxml

所需的软件包

但即使在那之后,我也无法使用该命令安装lxml pip install lxml

然而,由于我使用的是Python 3.4.0,我认为可能存在python-dev的不同版本(想到是由于面临一些类似的版本冲突问题)。所以我尝试安装python3-dev

然后我尝试使用前面说过的相同命令来安装lxml,这很有用!!!

因为我是新手。所以我谷歌搜索了那些句子 我能够理解lxmlxslt的含义。我为python-dev找到了link,但我还不确定它到底在做什么。

任何人都可以提供帮助:)

4 个答案:

答案 0 :(得分:33)

python-dev包含构建Python扩展所需的头文件。 lxml是一个Python C-API扩展,在您pip install lxml时编译。 lxml源代码中至少有类似#include <Python.h>的内容。编译器在编译期间查找Python.h文件,因此这些文件需要在您的系统上才能找到它们。 在Linux上,通常,python等包的二进制库和头文件是分开的。因此,您可以安装Python并且一切正常,但是当您想要构建扩展时,您需要安装相应的开发包。

答案 1 :(得分:6)

python-dev是包含Python C API头文件的包,由lxml使用,因为它包含用于高性能的Python C扩展。

答案 2 :(得分:1)

python-dev包含编译python扩展模块(https://docs.python.org/2/extending/extending.html)所需的一切。

请注意,Debian已经有一个用于python 3的lxml包(在http://lxml.de/installation.html中提到);一般来说,使用打包版本是个好主意。我建议pip uninstall lxml然后apt-get install python3-lxml

答案 3 :(得分:0)

http://lxml.de/将提供有关lxml的所有信息。 &安培; 对于安装lxml我更容易找到https://pypi.python.org/pypi/lxml/3.4.4 比其他方法。