Распространение исходных файлов с помощью приложения с открытым исходным кодом

StackOverflow https://stackoverflow.com/questions/1620798

Вопрос

Я написал приложение с открытым исходным кодом (GPL) для Linux и OSX и теперь хочу распространить его.Нормально ли распространять исходный код вместе с двоичными файлами по умолчанию или просто предоставить ссылку на то, где его можно получить?

Если я включу исходные файлы, где находится обычное место для их записи в пользовательской системе для 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 с атрибуция
Не связан с StackOverflow
scroll top