2009-07-21 96 views
37

我的问题是非常基本的,就像我现在的知识一样。Linux软件包储存库中的* -dev软件包实际上包含什么?

我是一个长期的Linux用户,但最近才对编程感兴趣。我发现Ubuntu存储库中的许多流行应用程序都具有-dev软件包(例如pidgin-dev以及pidgin)。我的问题是这样的:

这些包里有什么?下载pidgin-dev如何帮助Pidgin开发?它是否像创建针对给定应用程序的插件所需的工具的依赖检查一样简单?

我希望在-dev包中会有大量的文档,但是如果有的话,我不知道如何访问它。我正在想像一个手册页,但对编辑代码很有用。

任何和所有的建议比欢迎!

回答

25

The *-dev程序包大多数情况下都包含与一个库的界面相关的标头。接下来最常见的是描述构建选项和静态链接库的package-config文件(*.pc)。

一般来说,如果你想知道你已经安装的软件包的内容,dpkg -L pkgname会帮你。 apt-file程序可以告诉你存储库中的任何软件包。

请注意,William Pursell和caf的答案还包含有用的附加细节。如果您发现自己的输入有帮助,请加快速度。

+0

如果你想知道没有安装的内容,你也可以使用apt-get下载,然后dpkg-deb -c – Jeff 2014-09-17 21:23:45

14

-dev包通常包含C头文件和静态编译的库文件(.a扩展名)版本。有时它们包含其他文档和示例,甚至包含帮助程序。

0

该软件包包含主pidgin软件包中未包含的头文件和其他开发文件。如果你想编译自己的插件,请安装-dev。

18

(免责声明:我熟悉Debian的,但不是Ubuntu的,所以虽然几乎可以肯定的是我下面写的一切应用,有机会的话不是这样的。)在* -dev

还有一个项目包是/ usr/lib/lib * .so链接。 libfoo0软件包将安装文件/usr/lib/libfoo.so.0.0,而libfoo-dev安装链接/usr/lib/libfoo.so.0和/usr/lib/libfoo.so。这是允许您同时安装libfoo0和libfoo1的机制,以便需要旧库的软件可以使用新库与软件共存。当你安装libfoo-dev时,编译的任何软件都将遵循* .so链接并链接到该链接引用的库的版本。

相关问题