2016-07-22 8 views
7

Das ist meine Umgebung:Anaconda 3 für Linux hat keine Garantie?

  • CentOS 64-Bit-7.2.1511

  • Anaconda 3 4.1.1 64-bit (Python 3.5.2)

Ich möchte Erstellen Sie virtuelle Venv-Umgebung von pyvenv. Leider habe ich diese Fehlermeldung bekommen:

$ pyvenv test Error: Command '['/root/test/bin/python', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1

Nach der Suche im Internet, sagten die Leute das Modul ensurepip fehlt. Ich habe meinen Anaconda-Installationspfad /opt/anaconda3/lib/python3.5 überprüft. Es gibt keinen Sicherer-Ordner.

Dann, auf meinem Windows 10 64-Bit, überprüfte ich meinen Anaconda-Installationspfad D:\win10\Anaconda3\Lib\. Es gibt einen Sicherer Ordner! Und ich kann python -m venv test erfolgreich ausführen, um ein venv zu erstellen.

Dann habe ich die Download-Anaconda Python-Archive überprüft: D:\win10\Anaconda3\pkgs\python-3.5.2-0.tar.bz2 unter Windows 10 und /opt/anaconda3/pkgs/python-3.5.2-0.tar.bz2 auf CentOS 7.

Das ein Archiv unter Windows 10 funktioniert hat einen ensurepip Unterordner. Aber das auf CentOS 7 nicht!

Kennt jemand diesen Unterschied? Ist es ein Fehler von Anaconda?

Antwort

13

Ja, Anaconda3/2 für Linux und Mac OS hat ensurepip nicht installiert.

Nach this issue record, ist es nicht ein Fehler, diese absichtlich getan wird, wenn der Python in Anaconda ohne die Flagge --with-ensurepip=install zusammengestellt werden.

Ich denke, die Gründe (von Continuum Analytics) ist, dass in Anaconda Verteilung, conda der Chef die Pakete und virtuellen Umgebungen und

pip (und es ist Setuptools Abhängigkeit) installiert sind zu verwalten unabhängig von Python als Conda Pakete.

Statt pyvenv test laufen, können Sie zunächst pyvenv test --without-pip laufen, dann laden Sie die get-pip.py von pip's homepage, und installieren Sie den Pip in aktivierttest Venv.

Genau wie die folgenden:

$ #===== First create the venv without pip, and **activate** it. 
$ pyvenv test --without-pip 
$ cd test/ 
$ ls bin/ 
activate  activate.csh activate.fish [email protected]  [email protected] 
$ echo $PATH 
Whatever/Else:In/Your/System 
$ source bin/activate 
(test) $ echo $PATH 
/Users/YaOzI/test/bin:Whatever/Else:In/Your/System 
(test) $ 
(test) $ #===== Then install the pip independently. 
(test) $ python ~/Downloads/get-pip.py 
Collecting pip 
    Using cached pip-8.1.2-py2.py3-none-any.whl 
Collecting setuptools 
    Downloading setuptools-26.0.0-py2.py3-none-any.whl (459kB) 
    100% |████████████████████████████████| 460kB 1.3MB/s 
Collecting wheel 
    Downloading wheel-0.29.0-py2.py3-none-any.whl (66kB) 
    100% |████████████████████████████████| 71kB 5.7MB/s 
Installing collected packages: pip, setuptools, wheel 
Successfully installed pip-8.1.2 setuptools-26.0.0 wheel-0.29.0 
(test) $ ls bin/ 
activate activate.fish  easy_install-3.5* pip3* [email protected] wheel* 
activate.csh easy_install* pip*  pip3.5* [email protected] 
(test) $ 
(test) $ #===== Now you can play around with pip 
(test) $ pip list 
(test) $