1

I use pypy via pyenv on Ubuntu 18.04. How can I install scipy for this setup? Installing scipy for pypy is possible, but maybe I need to do extra steps using pyenv?

The Error

$ echo "pypy3.6-7.3.0" > ".python-version"
$ python --version
Python 3.6.9 (1608da62bfc7, Dec 23 2019, 10:50:04)
[PyPy 7.3.0 with GCC 7.3.1 20180303 (Red Hat 7.3.1-5)]

$ python -m pip install scipy
Collecting scipy
  Using cached scipy-1.4.1.tar.gz (24.6 MB)
  Installing build dependencies ... error
  ERROR: Command errored out with exit status 1:
[...]
      /home/moose/.pyenv/versions/pypy3.6-7.3.0/include/detail/common.h:134:19: fatal error: cstddef: No such file or directory
       #include <cstddef>
[...]
      SystemError: Cannot compile 'Python.h'. Perhaps you need to install pypy-dev|pypy-devel.

The full message is on gist.github.com

My System

$ apt list --installed | grep python | grep dev
libpython-all-dev/bionic,now 2.7.15~rc1-1 amd64 [installed,automatic]
libpython-dev/bionic,now 2.7.15~rc1-1 amd64 [installed,automatic]
libpython2.7-dev/bionic-updates,now 2.7.17-1~18.04 amd64 [installed,automatic]
libpython3-dev/bionic-updates,now 3.6.7-1~18.04 amd64 [installed,automatic]
libpython3.6-dev/bionic-updates,now 3.6.9-1~18.04 amd64 [installed,automatic]
python-all-dev/bionic,now 2.7.15~rc1-1 amd64 [installed,automatic]
python-dev/bionic,now 2.7.15~rc1-1 amd64 [installed]
python2.7-dev/bionic-updates,now 2.7.17-1~18.04 amd64 [installed,automatic]
python3-dev/bionic-updates,now 3.6.7-1~18.04 amd64 [installed]
python3.6-dev/bionic-updates,now 3.6.9-1~18.04 amd64 [installed]

$ apt list --installed | grep pypy
pypy/bionic,now 5.10.0+dfsg-3build2 amd64 [installed,automatic]
pypy-dev/bionic,bionic,now 5.10.0+dfsg-3build2 all [installed]
pypy-lib/bionic,now 5.10.0+dfsg-3build2 amd64 [installed,automatic]

$ apt list --installed | grep -E "blas|atlas|lapack"
libblas-dev/bionic,now 3.7.1-4ubuntu1 amd64 [installed]
libblas3/bionic,now 3.7.1-4ubuntu1 amd64 [installed,automatic]
libgslcblas0/bionic,now 2.4+dfsg-6 amd64 [installed,automatic]
liblapack-dev/bionic,now 3.7.1-4ubuntu1 amd64 [installed]
liblapack3/bionic,now 3.7.1-4ubuntu1 amd64 [installed,automatic]
Martin Thoma
  • 124,992
  • 159
  • 614
  • 958

1 Answers1

-1

The problem is the missing cstddef, which would seem to indicate you are missing the g++ include libararies. Did you install g++ or only gcc?

mattip
  • 2,360
  • 1
  • 13
  • 13