Fórum Root.cz

Hlavní témata => Vývoj => Téma založeno: Ecetrin 04. 06. 2019, 16:42:47

Název: Spouštění Python aplikace
Přispěvatel: Ecetrin 04. 06. 2019, 16:42:47
Ahoj,

jako embedded vývojář používám Python (3.7) na tvorbu skriptů a utilit usnadňujích mi práci, např. pro generování menu do MCU z .xlsx souboru, parsování dat atd. Většinu z toho ovládám pomocí konzole, oblíbil jsem si modul "click". Pár rozsáhlejších mám s GUI, s knihovnou PySide.

Nedávno jsem si napsal utilitku, která mi v nastavený čas zazálohuje určité soubory na flashku, nejedná se o nic složitého - jedno daemon vlákno, úvodní parsování XML souboru...

Zmíněná utilitka se zalíbila mé drahé polovičce, která by ji využila v práci  ;). Problém je, že nemá a nebude mít nainstalovaný interpret Pythonu. Otázka tudíž zní, jak elegantně (pokud je to vůbec možné) vygenerovat ze pythonního skriptu binárku (.exe)?
Co jsem se rozhlédl po netu, tak by snad šel k tomuto použít Cython a GCC... Nevím, zatím jsem nezkoušel.

Další otázkou je, jak by se to řešilo s GUI aplikací, nechce se mi ji přepisovat do C++ a Qt.

Děkuji moc za případné rady a nakopnutí. 
Název: Re:Spouštění Python aplikace
Přispěvatel: alex6bbc 04. 06. 2019, 16:51:43
Pyqt.
Neznam to, ale na webu se pise neco o cx_freeze.
Název: Re:Spouštění Python aplikace
Přispěvatel: Wavelet 04. 06. 2019, 20:03:09
Zkuste pyinstaller nebo nuitka:
https://www.pyinstaller.org/
https://nuitka.net/pages/overview.html

Oboje mám ozkoušené.
Název: Re:Spouštění Python aplikace
Přispěvatel: reddy 05. 06. 2019, 05:03:46
Používám autopytoexe. Funguje bez problémů, umí vše zabalit i do jediné binárky. Pokud jej spustíte na Windows, generuje exe binárku, pokud na linuxu, generuje linux binárku.
Název: Re:Spouštění Python aplikace
Přispěvatel: Wavelet 05. 06. 2019, 11:39:00
Používám autopytoexe. Funguje bez problémů, umí vše zabalit i do jediné binárky. Pokud jej spustíte na Windows, generuje exe binárku, pokud na linuxu, generuje linux binárku.

Dík to jsem neznal, koukám že to je grafická nadstavba nad pyinstallerrem: A .py to .exe converter using a simple graphical interface built using Eel and PyInstaller in Python.
Název: Re:Spouštění Python aplikace
Přispěvatel: michal_h 05. 06. 2019, 19:02:26
Nebo lze vyuzit portable verzi http://winpython.github.io/, sice to neni odpoved na puvodni otazku, ale treba to pomuze
Název: Re:Spouštění Python aplikace
Přispěvatel: Ecetrin 06. 06. 2019, 12:56:22
Díky za rady a náměty, pánové. Nejvíce mě asi zaujal autopytoexe, který dělá přesně to, co potřebuji a co jsem si představoval  ;) Škoda jen, že jsem o této utilitce nevěděl dřív...
Název: Re:Spouštění Python aplikace
Přispěvatel: qelurg 06. 06. 2019, 22:45:11
Python se nemusí instalovat, stačí ho zkopírovat a spouštět přes baťák, který přidá do path cestu k binárce pythonu. Takto už to praktikuji asi 20 let, je to prověřené řešení. Lze si tak vyrobit malé balíčky, které obsahují jen potřebné minimum.