LINUX.ORG.RU

cross-platform intaller generator — чтобы из одного конфига генерил deb, rpm и windows msi (допустим, для самописной игры с libsdl)


0

0

Не обязательно msi — но чтобы была принятая в виндах деинсталляция; можно еще и маковский пакет.

Требования простые — раскидать файлы по правильным директориям (причем на винде директорию, видимо, придется спрашивать) и сделать несколько шорткатов в десктопное меню. Хотя бы. (Под виндой «правильной» будет единственная директория; под линуксом — несколько: бинарник в /usr/bin, остальное — ...)

Википедия и гугл дают InstallJammer и IzPack;

IzPack, если не ошибаюсь, требует на этапе инсталляции яву и представляет собой замену пакетов (deb, rpm), а вовсе не генератор этих пакетов

InstallJammer, если не ошибаюсь, тоже вместо генережа пакетов (deb, rpm) на этапе инсталляции показывает tcl/tk-шную морду (морду с кучей свистелок конечно, типа «выбрать какие компоненты ставить, а какие нет», но это не нужно)

З.Ы. обоих не пробовал — сужу по их докам (сижу на дорогом инете, сорри)

Если кто не понял — SDL (и mingw-че-то-там) позволяет из одного исходника под линуксом сбилдить и линуксовый бинарник, и виндовый экзешник; хочется инсталлер сгенерить тоже с одного конфига.

★★★★★

Последнее исправление: www_linux_org_ru (всего исправлений: 3)

Можно попробовать nsis в качестве вендового инсталлера, ekiga-win32, например, его использует.

dn2010 ★★★★★
()

>причем на винде директорию, видимо, придется спрашивать

Эх, если бы на линуксе инсталляторы директорию спрашивали. Опционально, конечно...

proud_anon ★★★★★
()
Ответ на: комментарий от dn2010

>Можно попробовать nsis в качестве вендового инсталлера, ekiga-win32, например, его использует.

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

proud_anon ★★★★★
()

> Не обязательно msi — но чтобы была принятая в виндах деинсталляция; можно еще и маковский пакет.

rpm5 - работает и в венде и в MacOS X

Led ★★★☆☆
()

Вроде бы CPack из CMake умеет это.

KblCb ★★★★★
()

Можно попытаться приспособить под это дело cmake.

AITap ★★★★★
()






вопрос ко всем сказавшим «cmake» — имелся в виду cpack?






www_linux_org_ru ★★★★★
() автор топика
Ответ на: комментарий от proud_anon

а что спрашивать? бинарники - в /usr/bin, либрарии - в /usr/lib, конфиги - в /etc. И вообще, в пакетах можно изменять путь для установки.

cuki ★★★★
()
Ответ на: комментарий от dn2010

> Можно попробовать nsis в качестве вендового инсталлера, ekiga-win32, например, его использует.

ура — http://packages.debian.org/lenny/nsis есть в дебиане;

с генераторами остальных пакетов разберусь как-нибудь в рабочем порядке — возможно с cmake, возможно напрямую;

осталось: скрипт, который из тупого-тупого конфига типа

binary-1=my-game
binary-2=my-game-level-editor
menu-item-1=моя игра
menu-item-2=редактор уровней

генерит как nsis-овский конфиг, так и конфиги/скрипты для добавления в K-меню, гномовское меню и т.д. в deb, rpm, ...

www_linux_org_ru ★★★★★
() автор топика
Ответ на: комментарий от www_linux_org_ru

практически можно считать задачу решенной;

хотя вдруг если кто-то предложит готовый скрипт типа того что я выше описал — было бы интересно

так что пусть пока побудет открытой — завтра закрою

www_linux_org_ru ★★★★★
() автор топика

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

Yareg ★★★
()
Ответ на: комментарий от www_linux_org_ru

точнее:

много ли у нас юзеров игрушек, не имеющих прав ставить пакеты от рута?

например, на нокиа н800 рута просто так не дают, но пакеты можно ставить (и проще всего поиметь рута через пакет)

www_linux_org_ru ★★★★★
() автор топика
Ответ на: комментарий от cuki

>И вообще, в пакетах можно изменять путь для установки.
Не пусть для установки, а корень. Большинство линуксовых прог просто перестанет работать если ты вместо корня впихнешь их в другой каталог хотя бы потому, что какие нибудь /blah/usr/share/app прога не найдет потому что хотела их видеть просто в /usr/share/app

anotheranonymous
()
Ответ на: комментарий от www_linux_org_ru

> много ли у нас юзеров игрушек, не имеющих прав ставить пакеты от рута?

ставить игры юзерам из под рута... - проще сразу поставить virus.rpm, а все нормальные игры вроде nwn, Quake 4, ETQW прекрасно ставятся в хомяк

captcha: folder violations

anonymous
()
Ответ на: комментарий от anonymous

> ставить игры юзерам из под рута... - проще сразу поставить virus.rpm

То же самое можно сказать абсолютно про любую программу (абсолютно про любой класс программ)

dexpl ★★★★★
()

Линуксовый пакет можно сделать один - для LSB. По идее должен подойти для практически всех дистрибутивов.

Nxx ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.