I'm trying to install IPython in a virtualenv. I've set up my Virtualenv to use Pypy 2.7 instead of CPython 3.
When I use the IPython installed by apt-get
, it ends up using CPython 3 instead of Pypy.
When I try to pip install ipython
, I get a compilation error because it can't find the Python.h
header file. This error is detailed here: https://askubuntu.com/questions/922302/install-ipython-with-pip-on-ubuntu-16-04. The suggested fix results in the error:
Can not perform a '--user' install. User site-packages are not visible in this virtualenv.
[edit]
The complete error:
Collecting ipython
Using cached ipython-5.4.1-py2-none-any.whl
Requirement already satisfied: decorator in ./site-packages (from ipython)
Collecting pickleshare (from ipython)
Using cached pickleshare-0.7.4-py2.py3-none-any.whl
Collecting prompt-toolkit<2.0.0,>=1.0.4 (from ipython)
Using cached prompt_toolkit-1.0.15-py2-none-any.whl
Collecting pygments (from ipython)
Using cached Pygments-2.2.0-py2.py3-none-any.whl
Requirement already satisfied: setuptools>=18.5 in ./site-packages (from ipython)
Collecting simplegeneric>0.8 (from ipython)
Collecting traitlets>=4.2 (from ipython)
Using cached traitlets-4.3.2-py2.py3-none-any.whl
Collecting backports.shutil-get-terminal-size; python_version == "2.7" (from ipython)
Using cached backports.shutil_get_terminal_size-1.0.0-py2.py3-none-any.whl
Collecting pathlib2; python_version == "2.7" or python_version == "3.3" (from ipython)
Using cached pathlib2-2.3.0-py2.py3-none-any.whl
Collecting pexpect; sys_platform != "win32" (from ipython)
Using cached pexpect-4.2.1-py2.py3-none-any.whl
Requirement already satisfied: six>=1.9.0 in ./site-packages (from prompt-toolkit<2.0.0,>=1.0.4->ipython)
Collecting wcwidth (from prompt-toolkit<2.0.0,>=1.0.4->ipython)
Using cached wcwidth-0.1.7-py2.py3-none-any.whl
Collecting ipython-genutils (from traitlets>=4.2->ipython)
Using cached ipython_genutils-0.2.0-py2.py3-none-any.whl
Requirement already satisfied: enum34; python_version == "2.7" in ./site-packages (from traitlets>=4.2->ipython)
Collecting scandir; python_version < "3.5" (from pathlib2; python_version == "2.7" or python_version == "3.3"->ipython)
Using cached scandir-1.5.tar.gz
Collecting ptyprocess>=0.5 (from pexpect; sys_platform != "win32"->ipython)
Using cached ptyprocess-0.5.2-py2.py3-none-any.whl
Building wheels for collected packages: scandir
Running setup.py bdist_wheel for scandir ... error
Complete output from command /home/me/Documents/pypy-ipython-venv/bin/pypy -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-FmKqsi/scandir/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /tmp/tmpseW7pdpip-wheel- --python-tag pp256:
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-2.7
copying scandir.py -> build/lib.linux-x86_64-2.7
running build_ext
building '_scandir' extension
creating build/temp.linux-x86_64-2.7
cc -O2 -fPIC -Wimplicit -I/home/me/Documents/pypy-ipython-venv/include -c _scandir.c -o build/temp.linux-x86_64-2.7/_scandir.o
_scandir.c:14:20: fatal error: Python.h: No such file or directory
#include <Python.h>
^
compilation terminated.
error: command 'cc' failed with exit status 1
----------------------------------------
Failed building wheel for scandir
Running setup.py clean for scandir
Failed to build scandir
Installing collected packages: scandir, pathlib2, pickleshare, wcwidth, prompt-toolkit, pygments, simplegeneric, ipython-genutils, traitlets, backports.shutil-get-terminal-size, ptyprocess, pexpect, ipython
Running setup.py install for scandir ... error
Complete output from command /home/me/Documents/pypy-ipython-venv/bin/pypy -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-FmKqsi/scandir/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-RqBbsa-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/me/Documents/pypy-ipython-venv/include/site/python2.7/scandir:
running install
running build
running build_py
creating build
creating build/lib.linux-x86_64-2.7
copying scandir.py -> build/lib.linux-x86_64-2.7
running build_ext
building '_scandir' extension
creating build/temp.linux-x86_64-2.7
cc -O2 -fPIC -Wimplicit -I/home/me/Documents/pypy-ipython-venv/include -c _scandir.c -o build/temp.linux-x86_64-2.7/_scandir.o
_scandir.c:14:20: fatal error: Python.h: No such file or directory
#include <Python.h>
^
compilation terminated.
error: command 'cc' failed with exit status 1
----------------------------------------
Command "/home/me/Documents/pypy-ipython-venv/bin/pypy -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-FmKqsi/scandir/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-RqBbsa-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/me/Documents/pypy-ipython-venv/include/site/python2.7/scandir" failed with error code 1 in /tmp/pip-build-FmKqsi/scandir/