-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
[WIP] : QISKIT installer based on setuptools and Cython #412
Conversation
…thon compiler warning
OMP flag inserted only if compilers explicitly set via CC= and CXX=, and the corresponding compilers are not from Apple.
Note that this will not pass until Travis is reconfigured for new install process. |
Add pylint command
Setup now does: testing, pep8, profile, and coverage.
|
Travis now works with the following build matrix: Python 3.5:
Python 3.6
The builds are tested against the latest Anaconda version of all the libraries. Currently https://travis-ci.org/nonhermitian/arrogant_seahorse/jobs/369224424 |
This has been moved to its own repo so that integration testing is easier to do: |
We are going to restore setup.py file, so anyone can use it directly without having to run cmake first. But cmake tool is still centric to our build system, so the setup.py file will rely on it. |
Provides a standard installation and build chain via setuptools.
Description
C++ code is compiled via Cython, and linked to the NumPy BLAS libraries automatically. Support for Windows, and Visual Studio 2015 (the only supported build chain on Windows) comes for free. The c++ simulators no longer need a PIPE call, and are now called like any other Python object.
Motivation and Context
Using make is not a standard way of building Python packages. Instead, this Pull implements the standard
python setup.py install
. Building the c++ extensions locally, for running unit tests, requires doingpython setup.py build_ext --inplace
, and the resulting binary is built inqiskit.cython
. Wheels building is also a simple call:python setup.py bdist_wheel
. Going forward, there is a clear path to integration with conda-forge.This also helps to remedy issues such as #393, #340.
Benefits over current make process:
conda
in the install process.How Has This Been Tested?
So far tested on OSX: Apple clang, HB clang, HB gcc
Screenshots (if appropriate):
Types of changes
Checklist: