I've got several versions of python on my mac. I woud like python3 to be the default version and also would like to use virtualenv and virtualenvwrapper.
So, I've put an alias in my ~/.zshrc
alias python='python3'
I've also added the following to my ~/.zshrc
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
However, when I run mkvirtualenv i get the following error:
▶ mkvirtualenv cv
mkvirtualenv:79: /usr/local/bin/virtualenv: bad interpreter: /usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Ver: no such file or directory
I get the same error even if I pass the version of python:
▶ mkvirtualenv -p /usr/local/bin/python3 cv
mkvirtualenv:79: /usr/local/bin/virtualenv: bad interpreter: /usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Ver: no such file or directory
Some more command line output showing versions and what I've installed:
▶ python --version
Python 3.5.0
~
▶ pip3.5 install virtualenv
Requirement already satisfied (use --upgrade to upgrade): virtualenv in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages
~
▶ pip3.5 install virtualenvwrapper
Requirement already satisfied (use --upgrade to upgrade): virtualenvwrapper in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages
Requirement already satisfied (use --upgrade to upgrade): stevedore in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages (from virtualenvwrapper)
Requirement already satisfied (use --upgrade to upgrade): virtualenv in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages (from virtualenvwrapper)
Requirement already satisfied (use --upgrade to upgrade): virtualenv-clone in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages (from virtualenvwrapper)
Requirement already satisfied (use --upgrade to upgrade): six>=1.9.0 in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages (from stevedore->virtualenvwrapper)
Requirement already satisfied (use --upgrade to upgrade): pbr<2.0,>=1.6 in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages (from stevedore->virtualenvwrapper)
Requirement already satisfied (use --upgrade to upgrade): argparse in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages (from stevedore->virtualenvwrapper)
~
▶ echo $VIRTUALENVWRAPPER_PYTHON
/usr/local/bin/python3
This is what /usr/local/bin/virtualenv has
▶ more /usr/local/bin/virtualenv
#!/usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python
# EASY-INSTALL-ENTRY-SCRIPT: 'virtualenv==12.0.5','console_scripts','virtualenv'
__requires__ = 'virtualenv==12.0.5'
import sys
from pkg_resources import load_entry_point
if __name__ == '__main__':
sys.exit(
load_entry_point('virtualenv==12.0.5', 'console_scripts', 'virtualenv')()
)
Update
~
▶ virtualenv --no-site-packages --distribute -p /usr/bin/python3.3 ~/.virtualenvs/pywork3
zsh: /usr/local/bin/virtualenv: bad interpreter: /usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Ver: no such file or directory
Use the command pyvenv with python 3.
Example:
pyvenv venv
source venv/bin/activate
Related
I would like to use pip. Here I go:
$ python -m ensurepip --default-pip
Looking in links: /tmp/tmpd7_yb3oj
Requirement already satisfied: setuptools in /usr/local/lib/python3.8/site-packages (41.2.0)
Requirement already satisfied: pip in /usr/local/lib/python3.8/site-packages (19.2.3)
$ pip --version
-bash: pip: command not found
what did i miss?
You can also use /usr/local/lib/pip3 install . Generally accessible pip3 is stored at /usr/bin/pip3 and same is with python3 at /usr/bin/python3.
I'm trying to execute a python script which pygam ( from pygam import LogisticGAM, LinearGAM
).
when I'm trying to execute this script I have this error:
ModuleNotFoundError: No module named 'pygam'
The problem that pygam is installed with both pip and pip3.
This the result when I try to re-install it using pip:
DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support
WARNING: The directory '/home/mobelite/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
WARNING: The directory '/home/mobelite/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Requirement already satisfied: pygam in /usr/local/lib/python2.7/dist-packages (0.8.0)
Requirement already satisfied: scipy in /usr/local/lib/python2.7/dist-packages (from pygam) (1.2.2)
Requirement already satisfied: future in /usr/local/lib/python2.7/dist-packages (from pygam) (0.17.1)
Requirement already satisfied: numpy in /usr/local/lib/python2.7/dist-packages (from pygam) (1.16.5)
Requirement already satisfied: progressbar2 in /usr/local/lib/python2.7/dist-packages (from pygam) (3.47.0)
Requirement already satisfied: six in /usr/local/lib/python2.7/dist-packages (from progressbar2->pygam) (1.12.0)
Requirement already satisfied: python-utils>=2.3.0 in /usr/local/lib/python2.7/dist-packages (from progressbar2->pygam) (2.3.0)
and this is the result when I try to re-install them using pip3:
The directory '/home/mobelite/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/home/mobelite/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Requirement already satisfied (use --upgrade to upgrade): pygam in /usr/local/lib/python3.5/dist-packages
Requirement already satisfied (use --upgrade to upgrade): future in /usr/local/lib/python3.5/dist-packages (from pygam)
Requirement already satisfied (use --upgrade to upgrade): progressbar2 in /usr/local/lib/python3.5/dist-packages (from pygam)
Requirement already satisfied (use --upgrade to upgrade): numpy in ./.local/lib/python3.5/site-packages (from pygam)
Requirement already satisfied (use --upgrade to upgrade): scipy in ./.local/lib/python3.5/site-packages (from pygam)
Requirement already satisfied (use --upgrade to upgrade): python-utils>=2.3.0 in /usr/local/lib/python3.5/dist-packages (from progressbar2->pygam)
Requirement already satisfied (use --upgrade to upgrade): six in ./.local/lib/python3.5/site-packages (from progressbar2->pygam)
You are using pip version 8.1.1, however version 19.2.3 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
I found this is normal because I just install it, but I don't understand why they don't see pygam
Make sure you have the right versions of python and pip.
Try installing it again with python (with the correct version) you are using to run the script.
For example, you want to run it with [yhon3.5 use the below command:
python3.5 -m pip install pygam
I am assuming python3.5 in the above command invokes Python 3.5, on my system I have python3 invoke Python 3.5
Give the install a try with sudo as well
sudo pip install pygam
# OR
sudo pip3 install pygam
pip -V command will you the currently running version of pip and the python version it is installed in.
Example:
pip -V
pip 9.0.1 from /usr/lib/python2.7/dist-packages (python 2.7)
pip3 -V
pip 9.0.1 from /usr/lib/python3/dist-packages (python 3.6)
The above comes handy if multiple versions of python are installed on a system.
Let us know if it helps.
Make sure you are not using virtual environment, you must install pygame, just run the following command:
pip install pygame
Install it and try again. More information visit https://pypi.org/project/pygame/
I install python using homebrew and use pip comes with it to install python package on Mac OS EL Captian.
The pip installed with python works fine when install python modules and I have no problem import it in python shell(I have test the requests and beautifulsoup4 and they can be found). But I cannot find the executable for some python modules.
For example, in this question I asked about python sphinx doc generator command not found. Based on the documentation I should have a executable sphinx-build command available after pip install. But as you can see in that question, the command is not found.
I further tried another one, cookiecutter. Pip install runs smoothly without any issues. But the binary executable is still not found. As you can see:
JINXUANs-MacBook-Pro:~ jinxuanwu$ pip install cookiecutter
Requirement already satisfied (use --upgrade to upgrade): cookiecutter in /usr/local/lib/python2.7/site-packages
Requirement already satisfied (use --upgrade to upgrade): binaryornot>=0.2.0 in /usr/local/lib/python2.7/site-packages (from cookiecutter)
Requirement already satisfied (use --upgrade to upgrade): whichcraft>=0.1.1 in /usr/local/lib/python2.7/site-packages (from cookiecutter)
Requirement already satisfied (use --upgrade to upgrade): future>=0.15.2 in /Library/Python/2.7/site-packages (from cookiecutter)
Requirement already satisfied (use --upgrade to upgrade): ruamel.yaml>=0.10.12 in /usr/local/lib/python2.7/site-packages (from cookiecutter)
Requirement already satisfied (use --upgrade to upgrade): jinja2>=2.7 in /Library/Python/2.7/site-packages (from cookiecutter)
Requirement already satisfied (use --upgrade to upgrade): click>=5.0 in /usr/local/lib/python2.7/site-packages (from cookiecutter)
Requirement already satisfied (use --upgrade to upgrade): chardet>=2.0.0 in /usr/local/lib/python2.7/site-packages (from binaryornot>=0.2.0->cookiecutter)
Requirement already satisfied (use --upgrade to upgrade): ruamel.ordereddict in /usr/local/lib/python2.7/site-packages (from ruamel.yaml>=0.10.12->cookiecutter)
Requirement already satisfied (use --upgrade to upgrade): ruamel.base>=1.0.0 in /usr/local/lib/python2.7/site-packages (from ruamel.yaml>=0.10.12->cookiecutter)
Requirement already satisfied (use --upgrade to upgrade): MarkupSafe in /Library/Python/2.7/site-packages (from jinja2>=2.7->cookiecutter)
JINXUANs-MacBook-Pro:~ jinxuanwu$ cookiecutter
-bash: cookiecutter: command not found
JINXUANs-MacBook-Pro:~ jinxuanwu$
I also tried use pip install virtualenv still facing the command not found problem.
My Python version is 2.7.11, pip is 8.0.2 comes with python.
Use pip show -f cookiecutter to show the location of everything it installed (which I found from this answer on how to list the files installed by pip
When I ran this, it shows that it's installed in ../../../../usr/local/bin/cookiecutter. Looking at the Location information above it (/Library/Python/2.7/site-packages in my case), I can see that the string of .. are used to get to the root directory.
On my Mac, it installed it in /usr/local/bin. So I can access it by updating my path environmental:
export PATH=$PATH:/usr/local/bin
I installed virtualenvwrapper but when I run which virtualenvwrapper I get nothing.
When I try to do a reinstall using pip3, here's what I get.
~: $ pip3 install virtualenvwrapper
Requirement already satisfied (use --upgrade to upgrade): virtualenvwrapper in /usr/local/lib/python3.4/site-packages
Requirement already satisfied (use --upgrade to upgrade): virtualenv in /usr/local/lib/python3.4/site-packages (from virtualenvwrapper)
Requirement already satisfied (use --upgrade to upgrade): virtualenv-clone in /usr/local/lib/python3.4/site-packages (from virtualenvwrapper)
Requirement already satisfied (use --upgrade to upgrade): stevedore in /usr/local/lib/python3.4/site-packages (from virtualenvwrapper)
Cleaning up...
What am I missing?
After installing virtualenvwrapper, you need to
export WORKON_HOME=~/Envs
source /usr/local/bin/virtualenvwrapper.sh
to get these functions (such as virtualenvwrapper, mkvirtualenv, cdvirtualenv, ...).
To make it permanent, just put two lines above to your ~/.bashrc file.
I am trying to configure virtualenvwrapper with django1.4. I am following this post and am trying to do what it says there:
Admin$ pip install virtualenvwrapper
Requirement already satisfied (use --upgrade to upgrade): virtualenvwrapper in /usr/local/lib/python2.7/site-packages
Requirement already satisfied (use --upgrade to upgrade): virtualenv in /usr/local/lib/python2.7/site-packages (from virtualenvwrapper)
Requirement already satisfied (use --upgrade to upgrade): virtualenv-clone in /usr/local/lib/python2.7/site-packages (from virtualenvwrapper)
Requirement already satisfied (use --upgrade to upgrade): stevedore in /usr/local/lib/python2.7/site-packages (from virtualenvwrapper)
Admin$ export WORKON_HOME=$HOME/.virtualenvs
Admin$ export PROJECT_HOME=$HOME/Users/Admin
Admin$ source /usr/local/bin/virtualenvwrapper.sh
/usr/bin/python: No module named virtualenvwrapper
virtualenvwrapper.sh: There was a problem running the initialization hooks.
If Python could not import the module virtualenvwrapper.hook_loader,
check that virtualenv has been installed for
VIRTUALENVWRAPPER_PYTHON=/usr/bin/python and that PATH is
set properly.
Admin$ mkvirtualenv --python=python2.7 mynewenv
The executable /Users/Admin/python2.7 (from --python=/Users/Admin/python2.7) does not exist
Can anyone help me figure out how to get virtualenvwrapper set up on my osx snow leopard installation? Thanks so much for the help!
It looks like you're trying to use python2.7, but you haven't told virtualenvwrapper about that. Try adding export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python2.7 (assuming that's where your python2.7 install is located) before source /usr/local/bin/virtualenvwrapper.sh - i.e.
Admin$ export WORKON_HOME=$HOME/.virtualenvs
Admin$ export PROJECT_HOME=$HOME/Users/Admin
Admin$ export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python2.7
Admin$ source /usr/local/bin/virtualenvwrapper.sh