Portál AbcLinuxu, 11. května 2025 06:40

Dotaz: Python venv (unable to create process using)

22.3.2022 09:23 Sztyft
Python venv (unable to create process using)
Přečteno: 463×
Odpovědět | Admin
Zdravím,

možná mám hloupý dotaz, ale nevím si rady. Prosím o pomoc.

Vytvořil jsem si python script, který chci spouštět na různých počítačích a jen přenášet na flash disku (né všechny počítač mají nainstalovaný python, tudíž potřebuji virtuální prostředí).

Momentálni struktura souborů vypadá takto: (mám složku Program ve které mám složky Python39-32, .idea, venv a následně také program.py). Vše funguje jak má, mám zde naimportované také potřebné knihovny v site-packages. Jediný problem jsem měl s knihovnou Crypto.Cipher, která mi nefungovala při přenosu na jiný počítač. Proto jsem se rozhodl, že se tato knihovna sama "nainstaluje" pomocí souboru .bat.

Vytvořil jsem proto soubor spustit.bat, který obsahuje: chcp 65001 "%~dp0venv\Scripts\python.exe" -m pip install pycryptodome "%~dp0venv\Scripts\python.exe" cesta k program.py pause

Bohužel po spuštění spustit.bat dojde k vypsání chyby Unable to create process using "C:\Users\Marek Čermák\Desktop\program\Python39-32\python.exe" -m pip install pycryptodome

pyvenv.cfg kongiguruju pomocí konfigurace.bat echo home = %~dp0%pythonDir%> "%~dp0\venv\pyvenv.cfg" echo include-system-site-packages = false>> "%~dp0\venv\pyvenv.cfg" echo version = 3.9.6>> "%~dp0\venv\pyvenv.cfg"

Budu velice rád za každou pomoc.

Děkuji.

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

Odpovědi

22.3.2022 11:04 Sztyft
Rozbalit Rozbalit vše Re: Python venv (unable to create process using)
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pravděpodobně jsem již našel chybu. V případě tvorby souboru pyvenv.cfg dojde k definování "home", bohužel má problém s diakritikou... do souboru se cesta zapíše dobře, ale v případě "volání" C:\Users\Marek ?erm?k\Desktop\program\Python39-32\ Budu rád za jakýkoliv nápad, jak to opravit. Děkuji.
Gréta avatar 22.3.2022 12:27 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
Rozbalit Rozbalit vše Re: Python venv (unable to create process using)

nefungovalo by tam strčit tudlectu widnowsáckou jakoby $USER věc hele jakože

C:\Users\%username%\Desktop\program\Python39-32\

22.3.2022 13:10 Sztyft
Rozbalit Rozbalit vše Re: Python venv (unable to create process using)
Problém je, že cesta "C:\Users\Marek Čermák\Desktop\program\Python39-32\" se do konfiguračního souboru pyvenv.cfg zapíše v pořádku, ale když zkusím spustit příkaz "C:\Users\Marek Čermák\Desktop\program\venv\Scripts\python.exe" "C:\Users\Marek Čermák\Desktop\program\program.py" tak dojde k výpisu chyby "Unable to create process using C:\Users\Marek ?erm?k\Desktop\program\Python39-32". V případě, že složku umístím např. C:\program, tak vše funguje, jelikož neřeší žádnou diakritiku.
Gréta avatar 23.3.2022 21:23 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
Rozbalit Rozbalit vše Re: Python venv (unable to create process using)

nj zlatej linux :D ;D

nvm zkuz to *.exe možná taky pustit stim %username% bez čermáka a když to nezabere/nebude stačit tak asi zistit jak jako windows escapuje ty speciální znaky :O :O možná taky procentama hele?? :O :O

nebo to nainstalovat někam do program files?? :O :O

22.3.2022 11:08 X
Rozbalit Rozbalit vše Re: Python venv (unable to create process using)
Odpovědět | | Sbalit | Link | Blokovat | Admin
Nedalo by se vyresit "Jediný problem jsem měl s knihovnou Crypto." ? Potom by jsi se obesel bez dalsich problemu. Mohl by jsi popsat "která mi nefungovala při přenosu na jiný počítač"? Dalsi varianta je napsat to v prehnositelnejsim jazyku, nebo to udelat jako "online". No a konecne mozna delas neco co lze treba vyresit uplne jinak a jestli to neni tajemnstvi, nikdo se smat nebude.
22.3.2022 11:14 Sztyft
Rozbalit Rozbalit vše Re: Python venv (unable to create process using)
Veškeré knihovny, které jsem nakopíroval do složky site-packages fungují bez problému, jen knihovna pycryptodome stále píše "No module named Crypto.Cipher". Na internetu jsem našel, že není možné tuto knihovnu přenášet. Proto jsem se snažil najít nějaké řešení. Při přenosu celé složky na jiný počítač mi hlásí chybu "No module named Crypto.Cipher" do doby, než opět nainstaluju knihovnu Crypto.

Založit nové vláknoNahoru

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

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