Что предпочтенный путь состоит в том, чтобы опубликовать приложение только для двоичного файла для нескольких дистрибутивов Linux?

Поскольку мы просто не там все же. Вы, возможно, столь же легко спросили, "почему я должен все еще записать программы..., почему я не могу только питаться в документе требований и иметь компьютер, пишут приложение для меня?"

Разработчики компилятора проводят время на небольших вещах, потому что те - типы вещей, которые прикладные программисты склонны пропускать.

кроме того, они не могут принять слишком много (возможно, Ваш цикл, некоторое гетто было задержкой или чем-то)?

5
задан math 1 October 2009 в 08:08
поделиться

3 ответа

Вам следует взглянуть на Linux Standard Base . Он разработан специально, чтобы помочь людям в вашем положении. Он определяет среду, на которую могут положиться сторонние разработчики приложений - так что есть установленная версия libc и других библиотек, а некоторые программы и каталоги находятся в известных местах. Все основные дистрибутивы Linux поддерживают LSB.

Тем не менее, вам все равно, вероятно, следует упаковать результат специально для каждого основного дистрибутива - просто чтобы ваши клиенты могли управлять вашим приложением с помощью своих знакомых инструментов управления пакетами.

4
ответ дан 14 December 2019 в 01:12
поделиться

В принципе, есть два способа. Вы можете выбрать оба, если хотите.

Первый способ - это обычный способ, которым делают игры и подобные. Создайте подкаталог lib /, используйте LD_LIBARY_PATH и включите почти все необходимые вам разделяемые библиотеки. Это гарантирует безболезненное взаимодействие с пользователем, но увеличивает размер установщика и, вероятно, увеличивает объем памяти. Я бы даже не стал пытаться повторно использовать уже существующие библиотеки, поскольку они имеют тенденцию исчезать по мере обновления системы.

Второй способ - предоставить пакеты распространения. Их, как правило, не так уж и сложно сделать, а затем они прекрасно интегрируются с дистрибутивами и, кроме того, будут казаться более привлекательными для ваших клиентов. Два недостатка: вам нужно будет сделать это для каждого дистрибутива (Debian, Ubuntu, SuSE, redhat, вероятно, хорошее начало), и вам нужно будет поддерживать их: со временем некоторые библиотеки будут недоступны в конкретной версии, и, таким образом, у пользователя возникнут проблемы с зависимостями.

3
ответ дан 14 December 2019 в 01:12
поделиться

В программе установки проверьте, какие библиотеки установлены, а затем загрузите двоичные файлы для тех, которые не установлены.

Для дополнительного удобства ваших пользователей, если нет подключения к Интернету, попросите установщик сгенерировать ключ, который вы можете ввести на своем веб-сайте, чтобы получить ZIP-архив, который затем можно передать установщику.

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

Тем не менее: может быть разумнее поместить ваш ценный код в библиотеку ссылок, а затем предоставить это как двоичный blob в исходном пакете. Сюда, ваш код защищен так же, как и в чистом двоичном коде, и пользователи могут скомпилировать связующий код в своей любимой системе, не беспокоясь о вещах.

Я имею в виду: сколько стоит часть вашего кода, которая устанавливает пользовательский интерфейс? Сколько вы потеряете, если это украдут?

2
ответ дан 14 December 2019 в 01:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: