abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 21:22 | Nová verze

    Bylo vydáno Eclipse IDE 2025-09 aneb Eclipse 4.37. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 18:22 | IT novinky

    T-Mobile od 15. září zpřístupňuje RCS (Rich Communication Services) zprávy i pro iPhone.

    Ladislav Hagara | Komentářů: 1
    včera 13:22 | IT novinky

    Společnost ARM představila platformu Arm Lumex s Arm C1 CPU Cluster a Arm Mali G1-Ultra GPU pro vlajkové chytré telefony a počítače nové generace.

    Ladislav Hagara | Komentářů: 0
    včera 05:44 | Nová verze

    Unicode Consortium, nezisková organizace koordinující rozvoj standardu Unicode, oznámila vydání Unicode 17.0. Přidáno bylo 4 803 nových znaků. Celkově jich je 159 801. Přibylo 7 nových Emoji.

    Ladislav Hagara | Komentářů: 0
    9.9. 21:00 | IT novinky Ladislav Hagara | Komentářů: 10
    9.9. 18:33 | Nová verze

    Realtimová strategie Warzone 2100 (Wikipedie) byla vydána ve verzi 4.6.0. Podrobný přehled novinek, změn a oprav v ChangeLogu na GitHubu. Nejnovější verzi Warzone 2100 lze již instalovat také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 1
    9.9. 12:22 | IT novinky

    Polské vývojářské studio CD Projekt Red publikovalo na Printables.com 3D modely z počítačové hry Cyberpunk 2077.

    Ladislav Hagara | Komentářů: 1
    9.9. 11:44 | Pozvánky

    Organizátoři konference LinuxDays 2025 vydali program a zároveň otevřeli registrace. Akce se uskuteční 4. a 5. října na FIT ČVUT v pražských Dejvicích, kde vás čekají přednášky, workshopy, stánky a spousta šikovných lidí. Vstup na akci je zdarma.

    Petr Krčmář | Komentářů: 7
    8.9. 22:00 | IT novinky

    Uživatelé komunikátoru Signal si mohou svá data přímo v Signalu bezpečně zálohovat a v případě rozbití nebo ztráty telefonu následně na novém telefonu obnovit. Zálohování posledních 45 dnů je zdarma. Nad 45 dnů je zpoplatněno částkou 1,99 dolaru měsíčně.

    Ladislav Hagara | Komentářů: 0
    8.9. 18:44 | Zajímavý článek

    Server Groklaw, zaměřený na kauzy jako právní spory SCO týkající se Linuxu, skončil před 12 lety, resp. doména stále existuje, ale web obsahuje spam propagující hazardní hry. LWN.net proto v úvodníku připomíná důležitost zachovávání komunitních zdrojů a upozorňuje, že Internet Archive je také jen jeden.

    🇵🇸 | Komentářů: 29
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (83%)
     (7%)
     (2%)
     (2%)
     (4%)
     (2%)
    Celkem 161 hlasů
     Komentářů: 12, poslední včera 13:00
    Rozcestník

    Dotaz: Python: obsahuji zmrazene skripty i externi moduly?

    18.3.2016 00:24 zdenek2008 | skóre: 26
    Python: obsahuji zmrazene skripty i externi moduly?
    Přečteno: 532×
    Kdyz si napisu nejake skripty v Pythonu, ktere vyuzivaji extra instalovane programy jako treba plantuml nebo pdftk a navic treba pouzivaji databazi (rekneme napr. SQLite), a potom si hotove skripty zmrazim pomoci CX_freeze do MSI instalatoru na pocitadlo s Win (nebo jen jako build na jine PC s Linuxem), bude ten zmrazeny program fungovat "out of box" nebo se budou muset jeste extra doinstalovat ty externi programy/podpora databaze?

    (Kdo jeste nemate kristalovou kouli, smele se ptejte, rad doplnim.)

    Řešení dotazu:


    Odpovědi

    Řešení 1× (zdenek2008 (tazatel))
    Pavel Stárek avatar 18.3.2016 11:40 Pavel Stárek | skóre: 43 | blog: Tady bloguju já :-) | Kolín
    Rozbalit Rozbalit vše Re: Python: obsahuji zmrazene skripty i externi moduly?
    Poměrně dost věcí CX_freeze najde a zabalí sám. Pokud je potřeba nějaká specialitka, tak se mu to musí říct (například Microsoft C runtime - MSVCRT) pomocí include_files. Třeba takhle:
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    import matplotlib
    import sys
    from cx_Freeze import setup, Executable
    
    # Dependencies are automatically detected, but it might need fine tuning.
    #build_exe_options = {"packages": ["os"], "excludes": ["tkinter"]}
    includefiles = [("msshareddlls/Microsoft.VC90.CRT.manifest", "Microsoft.VC90.CRT.manifest"), ("msshareddlls/msvcm90.dll", "msvcm90.dll"), ("msshareddlls/msvcp90.dll", "msvcp90.dll"), ("msshareddlls/msvcr90.dll", "msvcr90.dll"), ("src/ui/main.ui", "ui/main.ui"), ("gtk-data-files/etc", "etc"), ("gtk-data-files/lib", "lib"), ("gtk-data-files/share", "share")]
    build_exe_options = {"packages": ["os", "serial", "matplotlib", "matplotlib.backends", "matplotlib.backends.backend_qt4agg", "matplotlib.backends.backend_gtkagg"], "excludes": [""], "include_files": includefiles}
    #build_exe_options = {}
    # GUI applications require a different base on Windows (the default is for a
    # console application).
    base = None
    if sys.platform == "win32":
        base = "Win32GUI"
    
    setup(  name = "ReflowControllerGUI",
            version = "1.0",
            description = "ReflowController data logging and setup application",
            options = {"build_exe": build_exe_options},
            executables = [Executable("src/ReflowControllerGUI.py", base=base, icon="icon.ico")])
    
    Kdo chce, hledá způsob; kdo nechce, hledá důvod.
    18.3.2016 13:27 zdenek2008 | skóre: 26
    Rozbalit Rozbalit vše Re: Python: obsahuji zmrazene skripty i externi moduly?
    Diky, vyzkousim.
    Pavel Stárek avatar 18.3.2016 17:31 Pavel Stárek | skóre: 43 | blog: Tady bloguju já :-) | Kolín
    Rozbalit Rozbalit vše Re: Python: obsahuji zmrazene skripty i externi moduly?
    A pokud chci něco aby zabalil a nejsem si jistý že balíček najde sám, tak ho vyjmenuju do té sekce packages (v mém případě tam mám například balíček serial).
    Kdo chce, hledá způsob; kdo nechce, hledá důvod.
    18.3.2016 21:04 zdenek2008 | skóre: 26
    Rozbalit Rozbalit vše Re: Python: obsahuji zmrazene skripty i externi moduly?
    Budu si to muset trochu vic prozkoumat; z toho co jsem zatim cetl, se zda ze Pythonove programy se distribuuji obtizneji nez kompilovane, z hlediska instalacnich potizi. Take je otazka, jestli zdrojovy kod zmrazenych Pythonovych skriptu je volne citelny, pro pripad ze bych program nechtel sirit jako open source.
    Pavel Stárek avatar 19.3.2016 13:29 Pavel Stárek | skóre: 43 | blog: Tady bloguju já :-) | Kolín
    Rozbalit Rozbalit vše Re: Python: obsahuji zmrazene skripty i externi moduly?
    V případě použití CX_freeze je vyroben malinký exe soubor který načítá interpreter pythonu a ten spustí vlastní pythonovský program. Co jsem koukal do výsledného zip souboru po použití cx_freeze, tak v něm je archiv library.zip, kde je jednak vlastní uživatelův program a další věci které jsou v čistém pythonu ze site-packages, avšak nejsou zabaleny v čitelné formě, ale jako "zkompilované" *.pyc soubory do bytekódu. Ty sice nejsou pro běžného uživatele čitelné, ale není problém je zpětně dekompilovat do čitelné formy.

    Pak se dá ještě použít py2exe, které udělá jeden velký exe soubor se vším uvnitř.
    Kdo chce, hledá způsob; kdo nechce, hledá důvod.
    19.3.2016 16:02 zdenek2008 | skóre: 26
    Rozbalit Rozbalit vše Re: Python: obsahuji zmrazene skripty i externi moduly?
    Diky. On je vlastne stejny problem se smirovanim zdrojoveho kodu i v pripade ze se Python pouzije na webserveru pro generovani dynamickych stranek: pokud mame vyvinuty engine nejake aplikace puvodne pro desktop a potom se rozhodneme jeste k tomu udelat web rozhrani, skripty jsou na serveru a kdyz je to na webhostingu tak minimalne spravce u providera si muze vesele delat s nasim kodem co se mu zlibi, alespon dokud ho nekdo nechytne a neklepne pres prsty. Takze by mozna bylo lepsi pouzit zmrazeny Pythonovy program i na takovem webserveru - tedy jestli je to technicky mozne.
    Pavel Stárek avatar 19.3.2016 20:36 Pavel Stárek | skóre: 43 | blog: Tady bloguju já :-) | Kolín
    Rozbalit Rozbalit vše Re: Python: obsahuji zmrazene skripty i externi moduly?
    To není až tak úplně pravda. Pokud mám na webovém serveru nějaký skript v PHP (třeba), tak pokud je webserver správně nakonfigurován tak kód vykoná a do prohlížeče pošle HTML s výsledkem. Správce (provider, webhoster) ale samozřejmě může na ten skript koukat a dělat si s ním co chce. To samé v Pythonu, ale tam by se dal použít již "zkompilovaný" skript. Jinak cx_freeze nemá primárně za úkol ochránit pythonovský kód před kopírováním, ale jeho účel je hlavně v "zabalení" aplikace v Pythonu tak, aby koncový uživatel byl ušetřen instalace Pythonu a potřebných dalších závislostí.

    Jinak Python lze použít také pro vývoj webu (frameworky Django, TurboGears atd.), dokonce sám v sobě obsahuje jednoduchý webserver (z příkazové řádky: python -m SimpleHTTPServer ). Příkladem budiž i třeba hosting rosti.cz , který nabízí Python na straně serveru.
    Kdo chce, hledá způsob; kdo nechce, hledá důvod.
    20.3.2016 16:32 zdenek2008 | skóre: 26
    Rozbalit Rozbalit vše Re: Python: obsahuji zmrazene skripty i externi moduly?
    Diky za vysvetleni. Pokusim se tim vsim prokousat. Jeste bych se zeptal trochu off topic: pokud jde o desktopove multiplatformni GUI, nakolik perspektivni je Tkinter?
    Pavel Stárek avatar 21.3.2016 14:49 Pavel Stárek | skóre: 43 | blog: Tady bloguju já :-) | Kolín
    Rozbalit Rozbalit vše Re: Python: obsahuji zmrazene skripty i externi moduly?
    Nevím jak je perspektivní, je to jakési "hlavní" GUI pro Python, respektive obvykle bývá součástí instalace Pythonu. Ale nepoužívám ho, většinou jsem dělal v PyGTK.
    Kdo chce, hledá způsob; kdo nechce, hledá důvod.
    25.3.2016 13:21 zdenek2008 | skóre: 26
    Rozbalit Rozbalit vše Re: Python: obsahuji zmrazene skripty i externi moduly?
    Diky, tak zatim vyzkousim Tkinter.

    Založit nové vláknoNahoru

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

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.