krober10nd / SeismicMesh

2D/3D serial and parallel triangular mesh generation tool for finite element methods.
https://seismicmesh.readthedocs.io/
GNU General Public License v3.0
127 stars 33 forks source link

Installation error: ModuleNotFoundError: No module named 'skbuild' #18

Closed nschloe closed 4 years ago

nschloe commented 4 years ago
pip install -e .
Defaulting to user installation because normal site-packages is not writeable
Obtaining file:///home/nschloe/software/seismicmesh/source-upstream
Requirement already satisfied: numpy in /home/nschloe/.local/lib/python3.9/site-packages (from SeismicMesh==1.0.0) (1.19.1)
Collecting segyio
  Downloading segyio-1.9.1.tar.gz (1.1 MB)
     |████████████████████████████████| 1.1 MB 1.0 MB/s
    ERROR: Command errored out with exit status 1:
     command: /usr/bin/python3.9 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-h2xsxm3l/segyio/setup.py'"'"'; __file__='"'"'/tmp/pip-install-h2xsxm3l/segyio/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-64qhrrex
         cwd: /tmp/pip-install-h2xsxm3l/segyio/
    Complete output (5 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-h2xsxm3l/segyio/setup.py", line 3, in <module>
        import skbuild
    ModuleNotFoundError: No module named 'skbuild'
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

The segyio dep needs

pip install scikit-build

to be installed. Probably worth mentioning in the the instructions, and probably worth filing a bug about upstream.

nschloe commented 4 years ago

This doesn't even install.

apt install python3-segyio

did the trick on Ubuntu. Also worth mentioning.

krober10nd commented 4 years ago

Ok. I've updated the dependencies on the requirements.txt with the scikit-build package on #20 .

It looks like some other users of segyio also had this issue with as per here https://github.com/equinor/segyio/issues/468

krober10nd commented 4 years ago

I improved the install.rst doc in #21 to differentiate between building by pypi and building by source/"manually" (Apparently, black also got recently updated and this was causing the CI linter to fail).