Как лучше всего развернуть коммерческие программы в Linux? [закрыто]

softwareengineering.stackexchange https://softwareengineering.stackexchange.com/questions/212137

Вопрос

\ nЗакрыто .Этот вопрос должен быть больше сфокусированный. В настоящее время он не принимает ответы. Хотите улучшить этот вопрос?Обновите вопрос, чтобы он сосредоточился только на одной проблеме до 11 18. Закрыт 7 лет назад .\"2013-09-26 редактировать этот пост

Из-за разнообразия дистрибутивов Linux программы довольно часто распространяются в исходном формате вместе со сценариями, чтобы помочь последовательности Улучшите этот вопрос .

Однако когда дело доходит до коммерческих программ, распространение исходного кода обычно просто невозможно.

Итак, если кто-то хочет продать программу и развернуть ее в среде Linux, что ему делать?Как это обычно делается?

Это было полезно?

Решение

Это делается так же, как и в любой ОС;путем распространения упакованных двоичных файлов.

configure; make; make install по-прежнему часто встречается в инструкциях для программного обеспечения с открытым исходным кодом, потому что он очень переносим и часто позволяет вам устанавливать программное обеспечение, написанное для универсальной UNIX, а не специально для Linux.Компиляция программного обеспечения на целевой машине (или похожей на нее) означает, что компилятор будет использовать заголовочные файлы (а компоновщик найдет нужные библиотеки), адаптированные к конкретной ОС и (в случае Linux) дистрибутиву.Сценарии конфигурации Автоконф GNU могут обнаруживать самые разные варианты операционных систем UNIX и пытаться выбрать наиболее подходящие библиотеки и параметры компилятора для системы.

Компиляция из исходного кода также позволяет конечному пользователю выбрать конкретную оптимизацию, если он этого хочет.Да, и изменить код так, как они хотят (хотя лицензия может ограничивать то, как они могут затем распространять его).

Если вы хотите распространять коммерческое программное обеспечение, сначала скомпилируйте его и распространите результат.Однако вам, возможно, придется создать более одной версии, в зависимости от сложности вашего пакета.Возможно, вам придется создать одну версию для Red Hat и производных, другую для Debian и производных и т. д.;для каждого дистрибутива вам, возможно, придется создавать разные пакеты для разных версий, которые все еще широко используются (один для RHEL 5, другой для RHEL6) из-за несовместимых библиотек.Или вам, возможно, придется собрать одну версию для ядер старше определенной версии, а другую — для более поздних версий, если изменился интерфейс ядра, важный для вашего приложения.Возможно, вам придется собрать пакеты для каждой из этих перестановок (дистрибутив + версия дистрибутива + версия ядра).Вы должны сделать это, потому что бинарники не могут адаптироваться - для этого и нужен исходник.

Лицензировано под: CC-BY-SA с атрибуция
scroll top