I ja som pouzival Py2exe. Robil maly program, ktory pristupoval z PC na AS/400 a robil tam nejake SQL-statistiky. Nepouzival som ziadne exoticke moduly, ale len to co je dodavane s ActivePythonom (Tkinter ...atd). Vysledok bol, ze na pojom pocitaci a niektorym kolegom to bezalo ok, ale asi dvom dalsim kolegom to vyhadzovalo vo Windowse chybu "...faulting module ntdll.dll...fault address 0x00011e58". Zatial sa to nepodarilo vyriesit...
Podobne ako ViNiL ale nechapem, preco v nutnosti instalacie Pythonu vidis nejaky problem.
Je to presne to iste, ako s inymi nastrojmi: ked robis v Jave musis instalovat Javu, ked robis v Perle musis instalovat Perl, ..atd
Exe je i tak obmedzene iba na jednu platformu. Naproti tomu ked napises skript v Pythone univerzalne, moze ti bezat bezo zmeny na viacerych platformach. Nemusis k programu takisto davat zdrojak, len skript skompilujes na kazdej platforme cez py2exe do bytecodu (.pyc)
Mne sa v mojej firme (banka) takisto pred nejakym casom podarilo ukazat, ze Python je na urcite veci velmi uzitocny a zaviest ho tu do produkcie :-)
Pythonovske programy bezia u nas na AS/400 v produkcnom prostredi skompilovane do bytecodu. Bolo to myslene povodne kvoli bezpecnosti, aby pritom nebol zdrojak a dalo sa zistit, kedy bol dany pyc-subor skompilovany atd... Ale nakoniec aj toto vedie len k problemom, lebo pri zmene programu treba vzdy prekompilovat aj bytekod. Podobne je to i so zmenou verziu Pythonu, lebo inak mozes dostat chybu "RuntimeError: Bad magic number in .pyc file"
Najlepsie je pouzivat rovno zdrojaky a zabezpecit system tak, aby k zdrojakom nemali pristup nekompetetne osoby.
Roman
| superman <[EMAIL PROTECTED]>
Sent by: [EMAIL PROTECTED] 19.09.2006 08:00
|
|
Pokud Vás to ještě zajímá, nakonec jsem program s py2exe rozchodil a
přeložil, ale musel jsem vyhodit modul logger a napsat si jednoduché
logování vlastními silami. Modul logger měl totiž v handlerech odkazy na
import řady různých věcí, které se sice normálně vůbec neuplatnily, ale
při přeložení do exe se všechny hledaly. A řadu z nich jsem neměl ani
nainstalovanou.
Pochopil jsem dvě věci, že python je prostě interpretr a překlad do exe
je z nouze ctnost kde mnoho modulů začne být problematických. A také to,
že py2exe prostě jen hloupě prochází příkazy import a co tam najde to se
snaží připojit a pak na tom trvá uvnitř exe. Jenže dost často to
nedokáže moc dobře a pak jsou problémy.
Trochu mě to zklamalo, protože ne vždy člověk chce distribuovat zdrojové
kódy a ne vše chce dávat jako open source. A hlavně potřebujete něco co
je nezávislé na tom, jestli je, nebo není naintalován interpretr pythonu.
Jak tyto problémy vlastně řešíte vy? Jak vyrábíte verze, které
nepotřebují nainstalovaný python? Já bych hrozně rád vyvíjel v pythonu a
nahradil tak částečně vývoj v C++, prostě python se mi zdá velmi dobrý.
Děkuji za podněty, rád bych python používal v maximální míře, ale tyhle
věci mi dost brání.
_______________________________________________
Python mailing list
[email protected]
http://www.py.cz/mailman/listinfo/python
Mgr. Ing. Roman MIKLÓŠ
Prvá stavebná sporiteľňa a.s.
Bajkalská 30, P. O. Box 48
829 48 Bratislava 25
Tel.: +421/ 2 / 582 31 174
Fax: +421/ 2 / 582 31 109
_______________________________________________ Python mailing list [email protected] http://www.py.cz/mailman/listinfo/python
