Pyenv Virtualenv Activation Not Work When Use Full Path
I install pyenv on centos, and check if its working. # curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash % Total % Received % X
Solution 1:
When using pyenv you need to reference the version that you are wanting to run. Try something like this:
/root/.pyenv/versions/myenv/bin/python
That is assuming your PYENV_ROOT
environment variable is set to /root/.pyenv/
When you execute python this way it is like activating the virtualenv, grabbing any installed libraries you had in the virtualenv as well.
Starting a fresh environment:
host:~ user$ pyenv virtualenv 2.7.12 myenv
Collecting virtualenv
Downloading virtualenv-15.1.0-py2.py3-none-any.whl (1.8MB)
100% |████████████████████████████████| 1.8MB 744kB/s
Installing collected packages: virtualenv
Successfully installed virtualenv-15.1.0
You are using pip version 8.1.1, however version 9.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip'command.
New python executable in /Users/user/.pyenv/versions/2.7.12/envs/myenv/bin/python2.7
Also creating executable in /Users/user/.pyenv/versions/2.7.12/envs/myenv/bin/python
Installing setuptools, pip, wheel...done.
Ignoring indexes: https://pypi.python.org/simple
Requirement already satisfied (use --upgrade to upgrade): setuptools in /Users/user/.pyenv/versions/2.7.12/envs/myenv/lib/python2.7/site-packages
Requirement already satisfied (use --upgrade to upgrade): pip in /Users/user/.pyenv/versions/2.7.12/envs/myenv/lib/python2.7/site-packages
Activate the virtual environment and show that requests is not installed by default. Install it.
host:~$ pyenv activate myenv
pyenv-virtualenv: prompt changing will be removed from future release. configure `export PYENV_VIRTUALENV_DISABLE_PROMPT=1' to simulate the behavior.
(myenv) host:~ $ python
Python 2.7.12 (default, Dec 152016, 12:49:19)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.42.1)] on darwin
Type "help", "copyright", "credits"or"license"for more information.
>>> import requests
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named requests
>>>
(myenv) host:~$ pip install requests
Collecting requests
Downloading requests-2.18.4-py2.py3-none-any.whl (88kB)
100% |████████████████████████████████| 92kB 2.0MB/s
Collecting chardet<3.1.0,>=3.0.2 (from requests)
Downloading chardet-3.0.4-py2.py3-none-any.whl (133kB)
100% |████████████████████████████████| 143kB 4.0MB/s
Collecting certifi>=2017.4.17 (from requests)
Downloading certifi-2017.11.5-py2.py3-none-any.whl (330kB)
100% |████████████████████████████████| 337kB 3.0MB/s
Collecting urllib3<1.23,>=1.21.1 (from requests)
Downloading urllib3-1.22-py2.py3-none-any.whl (132kB)
100% |████████████████████████████████| 133kB 5.8MB/s
Collecting idna<2.7,>=2.5 (from requests)
Downloading idna-2.6-py2.py3-none-any.whl (56kB)
100% |████████████████████████████████| 61kB 7.0MB/s
Installing collected packages: chardet, certifi, urllib3, idna, requests
Successfully installed certifi-2017.11.5 chardet-3.0.4 idna-2.6 requests-2.18.4 urllib3-1.22
Show that it is now installed in the virtual env:
(myenv) host:~$ python
Python 2.7.12 (default, Dec 152016, 12:49:19)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.42.1)] on darwin
Type "help", "copyright", "credits"or"license"for more information.
>>> import requests
>>>
Deactivate and show that the default python is a different version:
(myenv) host:~$ pyenv deactivate
host:~$ python
Python 3.5.2 (default, Sep 212016, 15:26:09)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.38)] on darwin
Type "help", "copyright", "credits"or"license"for more information.
Run the myenv
virtualenv directly
host:~$ ~/.pyenv/versions/myenv/bin/python
Python2.7.12 (default, Dec152016, 12:49:19)
[GCC4.2.1CompatibleAppleLLVM8.0.0 (clang-800.0.42.1)] on darwin
Type"help", "copyright", "credits" or "license"for more information.
>>> import requests
>>>
Post a Comment for "Pyenv Virtualenv Activation Not Work When Use Full Path"