2015-08-04 19 views
20

Qualcuno sa perché pyinstaller non riesce immediatamente dopo l'installazione tramite pip tramite anaconda 32bit?Installare pyinstaller tramite pip porta a "impossibile creare il processo"

ho installato pyinstaller tramite pip install pyinstaller attraverso il prompt dei comandi di anaconda su Windows a 64 bit che utilizza 32 bit anaconda (perché voglio creare 32 eseguibili bit)

Sì ho letto pyinstaller --version failed to create a process e pip/easy_install failure: failed to create process e How to install pyinstaller using pip

ho fatto non rinominare alcun file che ho installato anaconda 15 minuti fa, pycharm 10 minuti fa e pyinstaller 5 minuti fa. Ho disinstallato pyinstaller tramite pup disinstallato e reinstallato nella cartella degli script anaconda, questo non ha fatto nulla.

Qualche informazione? #windowsfrustrations Percorso C:\Users\me\Anaconda\Lib\site-packages>PyInstaller

+0

Il tuo utente era veramente "io" o hai un vero nome utente con uno spazio? (ad esempio 'John Doe') – phoenix

+0

Questo problema è stato risolto a luglio 2016 –

risposta

29

[Aggiornamento: Quindi apparentemente la correzione di root per questo è in setuptools. La correzione è stata rilasciata in setuptools versione 24.3.1 rilasciata il 23 luglio 2016. L'aggiornamento a qualcosa di più recente dovrebbe occuparsi di questo.]

Si scopre che questo è un bug in pip. Come accennato nell'altra risposta, ha un problema con gli spazi nel percorso dell'installazione di python.

In particolare, lascia i segni di virgola negli script di avvio generati.Gli script possono essere trovati in \ Scripts \ (ad esempio C: \ Program Files \ Python 3.5 \ Scripts). Per pyinstaller sono presenti 4 script pyi- * e pyinstaller-script.py.

È possibile aggirare questo relativamente facilmente modificando la prima riga di ogni script. Le prime righe generate saranno simili:

#!c:\program files\python 3.5\python.exe 
# EASY-INSTALL-ENTRY-SCRIPT: 'PyInstaller==3.1.1','console_scripts','pyinstaller' 

Basta aggiungere le virgolette attorno al comando la baracca, in questo modo:

#!"c:\program files\python 3.5\python.exe" 
+1

È passato un anno da quando è stata posta la domanda originale, e questa risposta ha funzionato ancora per me. Grazie! – wecsam

+0

la frase "Per pyinstaller ci sono 4 pyi- * e uno script pyinstaller- script.py." è così fuorviante. di fatto basta solo cambiare il file pyinstaller-script.py, grazie ana –

+0

Questo bug sembra essere stato risolto in successive pip e setuptools.Vedi [questa risposta sotto] (http://stackoverflow.com/a/39045803/694733) come risolvere invece. – user694733

-1

Nel mio caso, disinstallo e installa pyinstaller, quindi tutte le cose funzionano correttamente.

Può riguardare qualsiasi modifica all'interno di python dopo l'installazione, quindi la reinstallazione è una buona scelta.

disinstallazione:

pip uninstall pyinstaller 

installare:

pip install pyinstaller 
7

Questo errore sembra verificarsi quando Python (o di PyInstaller) percorso contiene uno spazio (ad esempio, quando si installa Python la directory Program Files (x86).)

Ho il sospetto che qualcosa nel codice sorgente di PyInstaller ci sono alcune virgolette mancanti.

Provare a installare Python in un percorso senza spazi e installare PyInstaller (tramite pip) su quel percorso.

+1

Ho reinstallato python senza spazi. Questa sembra un'opzione migliore rispetto alla modifica di tutti gli script di avvio. È possibile perdere le modifiche quando si aggiorna pyinstaller. – Antony

1

ho riparato [Anaconda 3.4] in questo modo:

  1. Enter Anaconda Prompt dei comandi
  2. Arrivare alla cartella degli script anaconda per: cd/path/to/anaconda/Scripts
  3. scrittura: percorso python pyinstaller-script.py/YourScript.py

Ha funzionato come un fascino.

4

Come accennato StationaryTraveller, si può ovviare a questo problema chiamando lo script pyinstaller-script.py

di seguito è riportato un esempio

C:>"C:\Program Files (x86)\Python35-32\python.exe" "C:\Program Files (x86)\Python35-32\Scripts\pyinstaller-script.py" script_to_compile.py 
0

"C: \ Program Fil es \ Python35-32 \ python.exe "" C: \ Programmi \ Python35-32 \ Scripts \ pyinstaller-script.py "--onefile --windowed ex_btn.py

--onefile: creare solo exe, --windowed: esclude il prompt CMD, ex_btn.py: file di script python.

Questo ha funzionato come fascino.

5

A partire dal luglio 2016 il problema è stato segnalato come fisso, ugrading pip, setuptools e quindi disinstallare e installare pyinstaller dovrebbe risolvere il problema

0

python -m pip install pip ha lavorato per me.

Con la versione Anaconda di Python 3.5.2 e 3.6.0 (aggiornato per questo errore, ma l'errore sembra essere lo stesso con entrambe le versioni), che avevo incontrato lo stesso messaggio di errore con il comando pip install pip, o pip install whatever/conda install whatever .

Avevo sia Python 2.7 e 3.5, ma pip install --upgrade pip funzionava tutti i giorni fino a pochi giorni fa.

+0

Potrebbe essere scambiato l'ordine per 2 versioni Python nel 'PATH'? – zyc

0

Ho avuto lo stesso problema, anche con pip e setuptools aggiornati, e il problema era che pyinstaller-script.py, trovato nella directory C: \ Python35 \ Scripts \, aveva il percorso sbagliato per python.exe.

Python sul mio sistema è stato in qualche modo installato in AppData, ma i suoi 'script e moduli venivano installati nella cartella C: \ Python35 \.

Cambiare la prima riga di pyinstaller-script.py nel percorso corretto di python.exe (directory Programmi all'interno di AppData), con virgolette se c'è spazio tra i nomi delle cartelle tra loro, e dovrebbe funzionare e non mostrare più il "Impossibile creare il processo".

L'installazione ufficiale di Windows10 e Python35 ha installato Python in qualche modo.

Problemi correlati