2009-10-25 42 views
0

我已經爲Linux和OSX編寫了一個開源(GPL)應用程序,現在希望分發它。缺省情況下將源代碼與二進制文件一起分發是正常的,還是隻提供一個鏈接以獲取它的位置?使用開源應用程序分發源文件

如果我包含源文件,在Linux和OSX的用戶系統上寫入它們的正常位置在哪裏(我認爲/ usr/local/src,但在我的Ubuntu機器上,據說充滿了開源應用程序,這個目錄是空的)。

回答

4

通常分開分發源代碼和二進制文件。二進制文件通常會以發行版特定的軟件包格式分發,而源文件將是一個簡單的包含項目文件夾的.tar.gz文件。用戶可以將其解壓到/ usr/local/src,如果他們想要但它應該在任何地方建立。這不取決於你的程序放棄在任何特定位置的來源。

我想在/ usr/local/src目錄,但我的Ubuntu機器上,按說塞滿的開源應用程序,這個目錄是空的

,如果你只使用的是Ubuntu這將是空的回購。操作系統負責/ usr,並將刪除您安裝到/ usr/src的所有源代碼。但是/ usr/local留給你玩,那是你安裝發行版不提供的東西的地方。

0

值得看看Sourceforge上的一些項目(http://www.sf.net)。被@bobince篡改,分發二進制文件和源文件是正常的。用戶不需要編譯就可以下載和運行。

1

關於在/ usr/local/src目錄

在/ usr /地方和任何子目錄總是會在你的機器上的空白,除非你有特別把東西在那裏。它是爲特定機器的用戶安裝軟件保留的文件系統的一部分。 Ubuntu(或任何發行版)不會觸及它。

您的發行版將爲它自己的源代碼提供單獨的位置,如果有的話。大多數Ubuntu安裝無論如何都不需要源代碼(儘管你可以下載它),但是如果他們這麼做的話,它會到/ usr/src之類的地方。但是,如果你想不想找個地方把自己的源代碼,不希望你的發行版來惹它,然後只是:

  • 如果它只是用於開發/在你自己的用戶帳戶編譯,你可以把它在您的主目錄中的某處。
  • 如果它是一個你要在系統上安裝的軟件,/ usr/local/src是建議的位置,你的發行版不會在那裏搞砸。

FHS是標準說明文件系統中的東西去的地方,並且包括與我上面討論過的區別。

無論您使用哪個目錄,您的軟件都應該能夠進行編譯,因爲您可以看到它可以取決於。

+0

事實上,在他的回答的第二部分,bobince似乎比我更加簡潔地解釋了這一點。 – thomasrutter