When I run:
sudo pip install ipython
I get the following error
OSError: [Errno: 1] Operation not permitted: '/System/Library/Frameworks/Python.framework/Versions/2.7/share'
The last command executed tries to create the directory given above.
Also, the following command fails to install iPython without providing any errors.
sudo pip install --user python
(I am on Mac OS X El Capitan in case other folks on this OS see the same issue.)
I have python2.7 installed via brew and the following solved my problem
brew install numpy
It installs python3, but it still works and sets it up for 2.7 as well.
Instructions telling
sudo pip install
are inherently wrong.If there is any tutorial out there which says you should do
sudo pip
then please file a bug against this package. The author is dis-educating Python community, as time has provensudo pip
to be a broken practice.OSX El Capitan introduced a mechanisms to prevent damaging the operating system files.
/System/Library/Frameworks/Python.framework/Versions/2.7/share
is one of the protected locations. A normal user has no reason to put or write any files there. This is because the operating system itself relies on these files andsudo pip
, with all force given from the above, would unconditionally overwrite them. Usually bad things would not happen, but the chances are there. Apple wants to protect their OS users to accidentally bricking their installation.Instead, you need to install a Python package, like IPython, locally to the home folder of your user. The easiest way is to create a virtual environment, activate it and then run pip in the virtual environment.
Example:
More info
Official Python package installation tutorial.
How to create virtual environments.
Alternatively, one should be able to do
pip install --user
. But again, no sudo needed and you need to manually set upPATH
environment variable.I guess you have some conflict with other package. For me it was
six
. So you need to use a command like this:or
pip install --ignore-installed six
I fully agree with Mikko, but if you still want to do it, here is the way:
csrutil disable
Like you I had the same problem. I'm running El Capitan and trying to install Juypter with python2.7 Here's how I was able to do it:
First install Juypter (would work also with
pip3
):Then you need install the python 2.7 kernel, otherwise you'll only be able to use python3 for the notebook.
This may be useful for those who wish to keep the Apple installation of python2.7 and want to use the Jupyter notebook with both python2.7 and python3.
I just installed it using
easy_install
Eg:
$ sudo easy_install networkx