Portál AbcLinuxu, 30. dubna 2024 04:28

Vytváření binárek pro Windows bez použití Windows

20.12.2007 06:49 | Přečteno: 2022× | Gammu | Výběrový blog

Jakmile jsem jednou vydal Wammu pro Windows, upletl jsem si na sebe bič. Chyby se opravují v nových verzích a shánět nějaké Windows na to, abych mohl vydat novou verzi mě už opravdu nebaví, takže binárka pro Windows je za aktuálním stavem docela daleko. Ale od čeho máme Wine? S tím by to přece mohlo jít nějak udělat…

Na celou myšlenku kompletní automatizace mě vlastně přivedl patch pro aktualizaci intrukcí pro vytvoření verze pro Windows. Sice tento návod měl spoustu nevyřešených problémů, ale nasměroval mě směrem, který se dal použít - vše udělat pomocí Pythonu pro Windows nainstalovaného ve Wine. Doposud jsem používal o něco obskurnější cestu s ručním linkováním proti rozbalenému Pythonu a občas věci prostě nefungovaly tak jak by měly.

Po úspěšném zkompilování python-gammu přišlo na řadu vytvoření instalačního balíčku z Wammu, protože většina uživatelů na Windows prostě není schopná (nebo ochotná) instalovat Python a jednotlivé moduly ručně. Bohužel Py2Exe, který pro tyto účely používám, trpí nějakou drobnou chybou, která po znásobení nenaimplementovanou funkcí ve Wine, způsobí, že to prostě nefunguje. Naštěstí je ve zmiňovaném bugu návod, jak to pomocí PE Tools opravit (je jen chybný nějaký údaj v PE hlavičce).

Po vytvoření binárky už jen stačí vytvořit instalátor. Naštěstí má Inno Setup i kompilátor pro příkazovou řádku, takže to už bylo bez jakýchkoliv komplikací.

Bohužel testování ve Wine však nezaručí, že program půjde spustit i na Windows (třeba výše zmiňovaná chyba v PE hlavičce Wine vůbec nevadí), ale snad se časem podaří verzi pro Windows odladit do rozumného stavu. Pokud se snad někdo chce zapojit do testování a má Windows, stahovat může dočasně tady.

Jak vypadají výsledné skripty pro kompilaci se můžete podívat v SVN pro Gammu, python-gammu a Wammu.

       

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

20.12.2007 09:21 azurIt | skóre: 34 | blog: zatial_bez_mena
Rozbalit Rozbalit vše Re: Vytváření binárek pro Windows bez použití Windows
Odpovědět | Sbalit | Link | Blokovat | Admin
ja som generoval win binarky v linuxe cez python + cx_Freeze + wine a nebol ziadny problem
20.12.2007 10:08 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: Vytváření binárek pro Windows bez použití Windows
To byla záložní varianta, ale nechtělo se mi učit něco dalšího :-).
20.12.2007 09:42 little-drunk-jesus | skóre: 14
Rozbalit Rozbalit vše Re: Vytváření binárek pro Windows bez použití Windows
Odpovědět | Sbalit | Link | Blokovat | Admin
Pro tvorbu instalacnich balicku na windows doporucuju WIX. Jednoduse se v nem tvori(jedna se o XML), tvori primo MSI balicky, je interne vyuzivan i Microsoftem...

Neni to uplne k tematu, ale treba ti to nekdy usnadni praci :)
20.12.2007 10:49 Miloslav Ponkrác | blog: miloslavponkrac
Rozbalit Rozbalit vše Re: Vytváření binárek pro Windows bez použití Windows
Já tvořím instalační balíčky pro Windows už moc moc let v Inno Setupu a za nic na světě bych to nevyměnil. A někteří protivníci používají user unfriendly NSIS.
20.12.2007 10:54 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: Vytváření binárek pro Windows bez použití Windows
To já pro jistotu používám obojí. NSIS ale tak, že vůbec netuším co to dělá, protože všechno za mě udělá CPack :-).
20.12.2007 11:28 Miloslav Ponkrác | blog: miloslavponkrac
Rozbalit Rozbalit vše Re: Vytváření binárek pro Windows bez použití Windows
A stejné možnosti automatického generování má i InnoSetup. Ale ono je to celkem zbytečné, protože instalační skript Inno Setupu je tak jednoduchý a samovysvětlující, že to není potřeba.
20.12.2007 11:29 Miloslav Ponkrác | blog: miloslavponkrac
Rozbalit Rozbalit vše Re: Vytváření binárek pro Windows bez použití Windows
Jo a někdy vyzkoušejte ladění instalačního balíčku vytvořeného Inno Setupem pomocí debuggeru včetně pravých breakpointů !!! Přímo v ceně v základním instalčním balíčku. To je parádička ...
20.12.2007 11:36 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: Vytváření binárek pro Windows bez použití Windows
To jsem naštěstí nikdy nepotřeboval a hodlám u toho zůstat :-).
20.12.2007 16:20 Miloslav Ponkrác | blog: miloslavponkrac
Rozbalit Rozbalit vše Re: Vytváření binárek pro Windows bez použití Windows
Ale ano, záleží co děláte. Až budete psát hello world program, taky se nejspíš bez debuggeru obejdete. Ale až vytvoříte něco velkého, můžete ocenit i věci, které jste předtím zatracoval. :-)
21.12.2007 03:10 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: Vytváření binárek pro Windows bez použití Windows
Naštěstí tak moc pro Windows nedělám. Respektive jediná věc jsou věci okolo Wammu a tam jsem si problematickou část instalačního skriptu půjčil od GTK :-).
30.12.2007 01:32 Lukáš Zapletal | skóre: 42 | blog: lzapův svět | Olomouc
Rozbalit Rozbalit vše Re: Vytváření binárek pro Windows bez použití Windows
Jedině NSIS, ten jeho jazyk je mocný :-)

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.