當前位置: 首頁>>技術教程>>正文


ubuntu – Linux軟件包存儲庫中的* -dev軟件包實際上包含什麽?

, , ,

問題描述

我的問題非常基礎,現在我的知識也很基礎。

我是Linux的long-time用戶,但直到最近才對編程產生了濃厚的興趣。我看到Ubuntu儲存庫中許多受歡迎的應用程序都帶有-dev軟件包(例如,除pidgin外還包括pidgin-dev)。我的問題是這樣的:

這些包裝裏有什麽?下載pidgin-dev對Pidgin的開發有何幫助?它像為給定應用程序創建插件所需的工具的依賴項檢查一樣簡單嗎?

我希望-dev軟件包中有大量文檔,但如果有,我不知道如何訪問它。我在想類似man-page的東西,但是對於編輯代碼很有用。

任何和所有建議都非常歡迎!

最佳答案

*-dev軟件包通常包含與庫接口相關的頭。接下來最常見的是package-config文件(*.pc),它們描述構建選項和靜態鏈接的庫。

通常,如果您想知道已安裝軟件包的內容,dpkg -L pkgname會為您提供。對於存儲庫中的任何軟件包,apt-file程序都可以告訴您相同的信息。

還要注意,威廉·珀塞爾(William Pursell)和caf的答案包含有用的其他詳細信息。如果您認為他們的意見有幫助,請對其進行投票。

次佳答案

(免責聲明:我熟悉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的機製,以便需要舊庫的軟件可以與使用新庫的軟件一起在包裝盒上co-exist。當您安裝libfoo-dev時,所有編譯的軟件都將遵循* .so鏈接,並以該鏈接所引用的庫版本為準。

第三種答案

-dev軟件包通常包含C頭文件和庫文件的靜態編譯版本(.a擴展名)。有時它們包含其他文檔和示例,甚至輔助應用程序。

第四種答案

該軟件包包含主pidgin軟件包中未包含的標頭和其他開發文件。如果您希望編譯自己的插件,請安裝-dev。

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/10236.html,未經允許,請勿轉載。