Spouštění Python aplikace

Spouštění Python aplikace
« kdy: 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í. 


alex6bbc

  • *****
  • 1 469
    • Zobrazit profil
    • E-mail
Re:Spouštění Python aplikace
« Odpověď #1 kdy: 04. 06. 2019, 16:51:43 »
Pyqt.
Neznam to, ale na webu se pise neco o cx_freeze.

Re:Spouštění Python aplikace
« Odpověď #2 kdy: 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é.

reddy

Re:Spouštění Python aplikace
« Odpověď #3 kdy: 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.

Re:Spouštění Python aplikace
« Odpověď #4 kdy: 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.


Re:Spouštění Python aplikace
« Odpověď #5 kdy: 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

Re:Spouštění Python aplikace
« Odpověď #6 kdy: 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...

qelurg

  • ****
  • 373
    • Zobrazit profil
    • E-mail
Re:Spouštění Python aplikace
« Odpověď #7 kdy: 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.