SciPy 2014 Poster - Python cross-compilation and platform builds for HPC and scientific computing
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Python CMake build system

A system for faster, straightforward cross-platform CPython builds across HPC, desktop, and mobile platforms with multiple build system generators and easy integration with C/C++/Fortran scientific computing libraries is described.



While the Python language has seen multiple implementations across a number of languages as it has grown in popularity, the original C-implementation of Python, CPython, remains the most widely adopted implementation for scientific computing. This can be largely attributed to the ubiquitous presence of C-build systems on scientific computing platforms and the large number of libraries that have a C interface, which are bridged with C-Python Extension Modules.

CMake is a popular cross-platform build system that performs reliable system introspection and configuration of C/C++/Fortran builds.

The scientific computing community has tooled the C-Python distribution with a CMake configuration so CPython can be built with the CMake build system.

This enables cross-compilation for HPC clusters, the raspberry PI, and ARM architectures such as those found in mobile platforms, static and shared builds, and a static python with C extension modules included in the library, for example. Additionally, it provides capabilities such as faster compilation, cross-platform builds with multiple build system generators, easy integration with other CMake configured projects, and configuration and linking other scientific computing libraries into C-Extensions. It is a community maintained, open source project available on Github with nightly test results submitted to a software quality dashboard.


Materials in this repository are distributed under the following licenses:

All Works of Art are licensed under the Creative Commons Attribution-ShareAlike 3.0. See LICENSE_CC_BY_SA_30 file for details.

The source svg file editable using Inkscape is available in this repository. The layout is based on the original work of Felix Breuer.

The icons are from Font Awesome.

The Start Here ribbon is adpated from the GitHub ribbons.