linux发行版通常会把类库的头文件和相关的pkg-config分拆成一个单独的xxx-dev(el)包.
以python为例, 以下情况你是需要python-dev的
你需要自己安装一个源外的python类库, 而这个类库内含需要编译的调用python api的c/c++文件
你自己写的一个程序编译需要链接libpythonXX.(a|so)
(注:以上不含使用ctypes/ffi或者裸dlsym方式直接调用libpython.so)
其他正常使用python或者通过安装源内的python类库的不需要python-dev.
python-dev的包在centos的yum中不叫python-dev,而是python-devel.
1.python-dev或python-devel
python-dev或python-devel称为是python的开发包,
其中包括了一些用C/Java/C#等编写的python扩展在编译的时候依赖的头文件等信息。
比如我们在编译一个用C语言编写的python扩展模块时,因为里面会有#include<Python.h>等这样的语句,因此我们就需要先安装python-devel开发包。
2.各种*.devel开发包
linux编程中,还会遇到各种*-devel开发包,例如mysql-devel、libgtk+-devel等等。
*-devel开发包中主要包括一些头文件和静态链接库。任何*-devel包基本都是这样。
备注:
注意python-dev或者其他*.devel软件一般都是C语言编写的一些头文件或cpp文件,
往往是其他模块或这我们自己写的模块在编译时,需要依赖这些*-devel软件包
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。