2013-09-25 99 views
-1

我是天真的程序員,可能是我的問題會很笨。但是,我的問題仍然令人頭痛。我有以下問題。哪個是寫包或者appication的更好方法linux

假設我正在執行一些任務,如在監視器屏幕上打印hello。那麼將這個任務寫入包或應用程序是更好的方法?但是我知道,如果包裝是必需的,那麼應該包含在構建配方中。

問題:
1.在Linux中的軟件包和應用程序有什麼區別?
2.如何決定是否將任務寫入包或應用程序?我的意思是,什麼決定因素,任務應該是在Linux包或應用程序?

Regards
Linux學習者。

+0

您爲應用程序編寫用戶空間代碼。軟件包不是編碼問題,而是**系統集成**或**維護**來提供和安裝文件。 – sawdust

回答

1

許多新手混淆術語配方,包裝和應用程序。應用程序只是一個運行並執行某些操作的程序。它可能是一個單獨的二進制可執行映像,例如hello world示例,或者它可能由幾個二進制可執行文件以及一組共享庫,模塊和配置文件(如Apache)組成。

在Linux中,術語「包」有它自己的特殊含義。一個包可以被看作是「相關文件的集合」,包含任何你想要的東西。有幾種流行的軟件包格式,最流行的是.deb(Debian)和.rpm(Redhat軟件包管理器)。嵌入式開發人員喜歡的另一種格式是.ipk,它基本上是一種更適合嵌入式的輕量級封裝格式。幾乎任何熟悉Linux的人都已經對軟件包進行了操作。基於Debian的發行版使用apt-get和其他實用程序來添加和刪除系統中的軟件包。 Fedora和其他人使用yum和/或rpm工具。對於使用.ipk的嵌入式系統,使用opkg *來管理軟件包。

openembedded和Yocto Project術語中的「recipe」是一個以.bb結尾的特殊文件,其中包含描述如何構建某些內容的元數據,通常是圖像或應用程序或共享庫。默認情況下,食譜會生成多個包,但可以生成更多包(甚至不包含任何包)。例如,典型配方會生成二進制包,doc包,包含頭文件和共享庫(如果適用)的-dev包,以及-dbg包含帶調試符號的二進制文件。

如果您在openembedded或Yocto Project下構建應用程序,則會自動構建一個包含您的應用程序的包。這取決於你如何使用該軟件包。

相關問題