Ubuntu 下名称 python-dev
and python3-dev
。
CentOS 下名称 python-devel
and python3-devel
。
Header files, a static library and development tools for building Python modules, extending the Python interpreter or embedding Python in applications.
This package is a dependency package, which depends on Debian’s default Python version.
Linux 发行版通常会把类库的头文件和相关的 pkg-config
分拆成一个单独的 xxx-dev
or xxx-devel
包。
以 Python 为例,以下情况你是需要 python-dev
or python-devel
。
自己安装一个源外的 python 类库,而这个类库内含需要编译调用 Python API 的 C/C++ 文件。
自己写的一个程序编译需要链接 libpythonXX.(a/so)。
(以上不含使用 ctypes/ffi 或者裸 dlsym 方式直接调用 libpython.so)。
其他正常使用 Python 或者通过安装源内的 Python 类库不需要 python-dev
or python-devel
。
python-dev
or python-devel
负责外部第三方 Python 相关包的编译需要的文件。
pkg = package
dependency [dɪ'pend(ə)nsɪ]:n. 属国,从属,从属物
package ['pækɪdʒ]:n. 包,包裹,套装软件,程序包 adj. 一揽子的 vt. 打包,将...包装
python-dev
or python-devel
称为是 Python 的开发包,包括了一些用 C / Java / C# 等编写的 Python 扩展,在编译的时候依赖的头文件等信息。我们在编译一个用 C 语言编写的 Python 扩展模块时,里面会有 #include
这样的语句,因此需要先安装 python-dev
or python-devel
开发包。
*-dev or *-devel
软件一般都是 C 语言编写的一些头文件或源文件,往往是其他模块或我们自己编写的模块在编译时,需要依赖的 *-dev or *-devel
软件包。
*-devel
开发包中包括一些头文件和静态链接库,任何 *-devel
包基本都是这样。
python-dev
软件包的依赖关系。
apt-cache depends python-dev
strong@foreverstrong:~$ apt-cache depends python-dev
python-dev
Depends: python
Depends: libpython-dev
Depends: python2.7-dev
strong@foreverstrong:~$
python3-dev
软件包的依赖关系。
apt-cache depends python3-dev
strong@foreverstrong:~$ apt-cache depends python3-dev
python3-dev
Depends: python3
Depends: libpython3-dev
Depends: python3.5-dev
Replaces:
strong@foreverstrong:~$
sudo apt-get install python-dev -y
sudo apt-get install python3-dev -y