繁体   English   中英

使用开源应用程序分发源文件

[英]Distributing source files with an open source app

我已经为Linux和OSX编写了一个开源(GPL)应用程序,现在希望分发它。 默认情况下,将源代码与二进制文件一起分发是正常的,还是仅提供指向可获取源代码的链接?

如果我包含源文件,那么在Linux和OSX的用户系统上写入它们的通常位置在哪里(我以为/ usr / local / src,但在我的Ubuntu计算机上,据说是充满了开源应用程序,此目录是空)。

通常分别分发源和二进制文件。 通常,二进制文件将以发行版特定的软件包格式分发,而源文件将是包含项目文件夹的简单.tar.gz。 用户可以根据需要将其解压缩到/ usr / local / src,但应在任何地方构建。 您的程序无法将其源代码放置在任何特定位置。

我以为/ usr / local / src,但是在我的Ubuntu计算机上(据称充满了开源应用程序),此目录为空

如果仅使用Ubuntu存储库,它将为空。 该操作系统由/ usr负责,并将您安装的所有源代码放入/ usr / src。 但是/ usr / local留给您玩; 那就是您安装发行版不提供的东西的地方。

关于/ usr / local / src

除非您在其中专门放置了某些内容,否则/ usr / local和任何子目录在您的计算机上始终为空。 这是文件系统的一部分,专用于该特定计算机的用户安装的软件。 Ubuntu(或任何发行版)从来都不应该碰它。

您的发行版将在其自己的源代码(如果有)中有单独的位置。 无论如何,大多数Ubuntu安装都不需要源代码(尽管您可以下载源代码),但是如果这样做的话,它将位于/ usr / src之类的地方。 但是,如果您想将自己的源代码放置在某个地方并且不想让您的发行版弄乱它,那么只需:

  • 如果仅用于您自己的用户帐户中的开发/编译,则可以将其放在主目录中的某个位置。
  • 如果您要在系统上安装该软件,则/ usr / local / src是建议安装的位置,您的发行版也不会在此处造成混乱。

FHS是说明事物在文件系统中所处位置的标准,并且包括诸如我上面所讨论的区别。

无论软件位于哪个目录中,都应该能够对其进行编译,因为如您所见,它可以依赖。

值得一看Sourceforge( http://www.sf.net )上的一些项目。 就像@bobince提到的那样,分开分发二进制文件和源代码是正常的。 用户无需编译就可以下载并运行,这对用户当然很友好。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM