Skip to main content

Improved build system generator for Python C/C++/Fortran/Cython extensions

Project description

https://github.com/scikit-build/scikit-build/actions/workflows/ci.yml/badge.svg https://dev.azure.com/scikit-build/scikit-build/_apis/build/status/scikit-build.scikit-build?branchName=master Code coverage status GitHub Discussion

Improved build system generator for CPython C/C++/Fortran/Cython extensions.

Better support is available for additional compilers, build systems, cross compilation, and locating dependencies and determining their build requirements.

The scikit-build package is fundamentally just glue between the setuptools Python module and CMake.

To get started, see this example and scikit-build-sample-projects.

Latest Release

Versions

Downloads

https://img.shields.io/pypi/v/scikit-build.svg https://img.shields.io/pypi/dm/scikit-build
https://anaconda.org/conda-forge/scikit-build/badges/version.svg https://anaconda.org/conda-forge/scikit-build/badges/downloads.svg

Known Issues

These issues are likely to be addressed in upcoming releases.

  • Editable installs do not work with the latest versions of Setuptools (and had issues with older versions, too).

  • Configuration scikit-build cares about _must_ be specified in setup() currently.

  • The cache directory (_skbuild) may need to be deleted between builds in some cases (like rebuilding with a different Python interpreter).

We are also working on improving scikit-build, so there are some upcoming changes and deprecations:

  • All deprecated setuptools/distutils features are also deprecated in scikit-build, like the test command, easy_install, etc.

  • Python 3.6 support is deprecated, as setuptools, pytest, and everything else we use has dropped it already.

  • Older versions of CMake (<3.15) are not recommended; a future version will remove support for older CMake’s (along with providing a better mechanism for ensuring a proper CMake is available).

  • Our primary branch will change to main

If you need any of these features, please open or find an issue explaining what and why you need something.

Miscellaneous

Support for this work was provided by NSF cooperative agreement OAC-2209877.

History

PyCMake was created at SciPy 2014 in response to general difficulties building C++ and Fortran based Python extensions across platforms. It was renamed to “scikit-build” in 2016.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scikit-build-0.16.6.tar.gz (272.2 kB view details)

Uploaded Source

Built Distribution

scikit_build-0.16.6-py3-none-any.whl (79.0 kB view details)

Uploaded Python 3

File details

Details for the file scikit-build-0.16.6.tar.gz.

File metadata

  • Download URL: scikit-build-0.16.6.tar.gz
  • Upload date:
  • Size: 272.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.1

File hashes

Hashes for scikit-build-0.16.6.tar.gz
Algorithm Hash digest
SHA256 9047817b0dd2522cc8b7122b398e8a41c18bf4cbd23de1644919bdf34941a8c6
MD5 1fa6d248a7c9e89e5ee7008aa70e7211
BLAKE2b-256 00912c7cd1a6b567e8e40c1677c61aba39e5f14ccf06ac78ae4fa6acb84ae140

See more details on using hashes here.

Provenance

File details

Details for the file scikit_build-0.16.6-py3-none-any.whl.

File metadata

File hashes

Hashes for scikit_build-0.16.6-py3-none-any.whl
Algorithm Hash digest
SHA256 f9282cdc9da433598c4f94512ae68e77be2a5ab7e944c76179bbeb9981bf1ba3
MD5 65bff4cd8cf108709f98939152950f83
BLAKE2b-256 d4f50dc877f980b7d5fa8d2f0bc97bcdf3bed84c62c74d78ad45fc6a632b6dbb

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page