Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

scikit-build - No module named 'skbuild' #999

Open
avalon60 opened this issue Jun 19, 2023 · 2 comments
Open

scikit-build - No module named 'skbuild' #999

avalon60 opened this issue Jun 19, 2023 · 2 comments

Comments

@avalon60
Copy link

When trying to install tkfontawesome, it falls over on scikit-build - No module named 'skbuild'

Collecting tkfontawesome
  Using cached tkfontawesome-0.2.0-py3-none-any.whl (405 kB)
Collecting lxml==4.7.1 (from tkfontawesome)
  Using cached lxml-4.7.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl (6.9 MB)
Collecting tksvg==0.7.4 (from tkfontawesome)
  Using cached tksvg-0.7.4.tar.gz (50 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'error'

  error: subprocess-exited-with-error
  
  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [8 lines of output]
      scikit-build is required to build this project
      install with `python -m pip install scikit-build`
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/tmp/pip-install-jr4vv2q1/tksvg_afc2a3ceb73d44ea9268c70b9d76a4bb/setup.py", line 28, in <module>
          from skbuild import setup
      ModuleNotFoundError: No module named 'skbuild'
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
@henryiii
Copy link
Contributor

henryiii commented Jun 19, 2023

The problem is tkfontawesome doesn't have a pyproject.toml. Pip now builds in isolated mode by default, which means that it's incorrectly setting up the environment. (In Python 3.12, both distutils and setuptools won't be in default environments either, by the way!) Either a pyproject.toml should be added with the following content:

[build-system]
requires = ["setuptools", "scikit-build"]
build-backend = "setuptools.build_meta"

or you can pass --no-build-isolation (if using pip) / --no-isolation (if using build).

@avalon60
Copy link
Author

avalon60 commented Jun 21, 2023

Thanks @henryiii.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants