Coder Social home page Coder Social logo

qiskit / qiskit-metapackage Goto Github PK

View Code? Open in Web Editor NEW
3.0K 89.0 755.0 39.58 MB

Qiskit is an open-source SDK for working with quantum computers at the level of circuits, algorithms, and application modules.

Home Page: https://qiskit.org

License: Apache License 2.0

Python 44.36% Shell 2.08% OpenQASM 53.56%
qiskit quantum-computing quantum-programming-language documentation

qiskit-metapackage's Introduction

Qiskit

License Current Release Extended Support Release Downloads Coverage Status PyPI - Python Version Minimum rustc 1.70 Downloads DOI

Qiskit is an open-source SDK for working with quantum computers at the level of extended quantum circuits, operators, and primitives.

This library is the core component of Qiskit, which contains the building blocks for creating and working with quantum circuits, quantum operators, and primitive functions (sampler and estimator). It also contains a transpiler that supports optimizing quantum circuits and a quantum information toolbox for creating advanced quantum operators.

For more details on how to use Qiskit, refer to the documentation located here:

https://docs.quantum.ibm.com/

Installation

Warning

Do not try to upgrade an existing Qiskit 0.* environment to Qiskit 1.0 in-place. Read more.

We encourage installing Qiskit via pip:

pip install qiskit

Pip will handle all dependencies automatically and you will always install the latest (and well-tested) version.

To install from source, follow the instructions in the documentation.

Create your first quantum program in Qiskit

Now that Qiskit is installed, it's time to begin working with Qiskit. The essential parts of a quantum program are:

  1. Define and build a quantum circuit that represents the quantum state
  2. Define the classical output by measurements or a set of observable operators
  3. Depending on the output, use the primitive function sampler to sample outcomes or the estimator to estimate values.

Create an example quantum circuit using the QuantumCircuit class:

import numpy as np
from qiskit import QuantumCircuit

# 1. A quantum circuit for preparing the quantum state |000> + i |111>
qc_example = QuantumCircuit(3)
qc_example.h(0)          # generate superpostion
qc_example.p(np.pi/2,0)  # add quantum phase
qc_example.cx(0,1)       # 0th-qubit-Controlled-NOT gate on 1st qubit
qc_example.cx(0,2)       # 0th-qubit-Controlled-NOT gate on 2nd qubit

This simple example makes an entangled state known as a GHZ state $(|000\rangle + i|111\rangle)/\sqrt{2}$. It uses the standard quantum gates: Hadamard gate (h), Phase gate (p), and CNOT gate (cx).

Once you've made your first quantum circuit, choose which primitive function you will use. Starting with sampler, we use measure_all(inplace=False) to get a copy of the circuit in which all the qubits are measured:

# 2. Add the classical output in the form of measurement of all qubits
qc_measured = qc_example.measure_all(inplace=False)

# 3. Execute using the Sampler primitive
from qiskit.primitives.sampler import Sampler
sampler = Sampler()
job = sampler.run(qc_measured, shots=1000)
result = job.result()
print(f" > Quasi probability distribution: {result.quasi_dists}")

Running this will give an outcome similar to {0: 0.497, 7: 0.503} which is 000 50% of the time and 111 50% of the time up to statistical fluctuations. To illustrate the power of Estimator, we now use the quantum information toolbox to create the operator $XXY+XYX+YXX-YYY$ and pass it to the run() function, along with our quantum circuit. Note the Estimator requires a circuit without measurement, so we use the qc_example circuit we created earlier.

# 2. Define the observable to be measured 
from qiskit.quantum_info import SparsePauliOp
operator = SparsePauliOp.from_list([("XXY", 1), ("XYX", 1), ("YXX", 1), ("YYY", -1)])

# 3. Execute using the Estimator primitive
from qiskit.primitives import Estimator
estimator = Estimator()
job = estimator.run(qc_example, operator, shots=1000)
result = job.result()
print(f" > Expectation values: {result.values}")

Running this will give the outcome 4. For fun, try to assign a value of +/- 1 to each single-qubit operator X and Y and see if you can achieve this outcome. (Spoiler alert: this is not possible!)

Using the Qiskit-provided qiskit.primitives.Sampler and qiskit.primitives.Estimator will not take you very far. The power of quantum computing cannot be simulated on classical computers and you need to use real quantum hardware to scale to larger quantum circuits. However, running a quantum circuit on hardware requires rewriting them to the basis gates and connectivity of the quantum hardware. The tool that does this is the transpiler and Qiskit includes transpiler passes for synthesis, optimization, mapping, and scheduling. However, it also includes a default compiler which works very well in most examples. The following code will map the example circuit to the basis_gates = ['cz', 'sx', 'rz'] and a linear chain of qubits $0 \rightarrow 1 \rightarrow 2$ with the coupling_map =[[0, 1], [1, 2]].

from qiskit import transpile
qc_transpiled = transpile(qc_example, basis_gates = ['cz', 'sx', 'rz'], coupling_map =[[0, 1], [1, 2]] , optimization_level=3)

Executing your code on real quantum hardware

Qiskit provides an abstraction layer that lets users run quantum circuits on hardware from any vendor that provides a compatible interface. The best way to use Qiskit is with a runtime environment that provides optimized implementations of sampler and estimator for a given hardware platform. This runtime may involve using pre- and post-processing, such as optimized transpiler passes with error suppression, error mitigation, and, eventually, error correction built in. A runtime implements qiskit.primitives.BaseSampler and qiskit.primitives.BaseEstimator interfaces. For example, some packages that provide implementations of a runtime primitive implementation are:

Qiskit also provides a lower-level abstract interface for describing quantum backends. This interface, located in qiskit.providers, defines an abstract BackendV2 class that providers can implement to represent their hardware or simulators to Qiskit. The backend class includes a common interface for executing circuits on the backends; however, in this interface each provider may perform different types of pre- and post-processing and return outcomes that are vendor-defined. Some examples of published provider packages that interface with real hardware are:

You can refer to the documentation of these packages for further instructions on how to get access and use these systems.

Contribution Guidelines

If you'd like to contribute to Qiskit, please take a look at our contribution guidelines. By participating, you are expected to uphold our code of conduct.

We use GitHub issues for tracking requests and bugs. Please join the Qiskit Slack community for discussion, comments, and questions. For questions related to running or using Qiskit, Stack Overflow has a qiskit. For questions on quantum computing with Qiskit, use the qiskit tag in the Quantum Computing Stack Exchange (please, read first the guidelines on how to ask in that forum).

Authors and Citation

Qiskit is the work of many people who contribute to the project at different levels. If you use Qiskit, please cite as per the included BibTeX file.

Changelog and Release Notes

The changelog for a particular release is dynamically generated and gets written to the release page on Github for each release. For example, you can find the page for the 0.46.0 release here:

https://github.com/Qiskit/qiskit/releases/tag/0.46.0

The changelog for the current release can be found in the releases tab: Releases The changelog provides a quick overview of notable changes for a given release.

Additionally, as part of each release, detailed release notes are written to document in detail what has changed as part of a release. This includes any documentation on potential breaking changes on upgrade and new features. See all release notes here.

Acknowledgements

We acknowledge partial support for Qiskit development from the DOE Office of Science National Quantum Information Science Research Centers, Co-design Center for Quantum Advantage (C2QA) under contract number DE-SC0012704.

License

Apache License 2.0

qiskit-metapackage's People

Contributors

1ucian0 avatar atilag avatar cryoris avatar dcmckayibm avatar delapuente avatar derivation avatar diego-plan9 avatar eric-arellano avatar garrison avatar huangjunye avatar hushaohan avatar itoko avatar jakelishman avatar javabster avatar jaygambetta avatar jyu00 avatar kdk avatar kevinhartman avatar lcapelluto avatar lerongil avatar manoelmarques avatar mtreinish avatar nonhermitian avatar omarcostahamido avatar paniash avatar qiskit-bot avatar rafeyiqbalrahman avatar sooluthomas avatar travis-s-ibm avatar woodsp-ibm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

qiskit-metapackage's Issues

qiskit documentation

Qiskit documentation

This document summarizes the flow for updating the documentation for Qiskit
that ends up being available at:

https://qiskit.org/documentation/

This is complicated as it needs to draw from multiple places.

https://qiskit.org/documentation/

This is made from the repo Qiskit using the files:

  • /doc/index.rst
  • /doc/overview.rst
  • /doc/install.rst
  • ... rst converstions of the notebooks in qiskit-tutorials/qiskit/basic

Then it should have a link to the following
/terra -> either folder of link to doc generated by terra
/aer -> either folder of link to doc generated by aer
/ignus -> not available yet.
/aqua -> either folder of link to doc generated by aqua
/chemistry -> either folder of link to doc generated by chemistry

https://qiskit.org/documentation/terra

This will be built from Qiskit-terra

  • /doc/index.rst
  • /doc/overview.rst
  • ... rst converstions of the notebooks in qiskit-tutorials/qiskit/terra
  • /doc/CONTRIBUTING
  • /doc/release_history
    -- then auto build of the Terra SDK reference _autodoc/qiskit

https://qiskit.org/documentation/aer

This will be built from Qiskit-aer

  • /doc/index.rst
  • /doc/overview.rst
  • ... rst converstions of the notebooks in qiskit-tutorials/qiskit/aer
  • /doc/CONTRIBUTING
  • /doc/release_history
    -- then auto build of the Aer SDK reference _autodoc/qiskit

https://qiskit.org/documentation/aqua

This will be built from Qiskit-aqua

  • /doc/index.rst
  • /doc/overview.rst
  • /doc/install.rst (this we need until aqua is in qiskit)
  • ... rst converstions of the notebooks in qiskit-tutorials/qiskit/aqua
  • /doc/CONTRIBUTING
  • /doc/release_history
    -- then auto build of the Aqua SDK reference _autodoc/qiskit

https://qiskit.org/documentation/chemistry

This will be built from Qiskit-chemistry

  • /doc/index.rst
  • /doc/overview.rst
  • /doc/install.rst
  • ... rst converstions of the notebooks in qiskit-tutorials/qiskit/aqua/chemistry
  • /doc/CONTRIBUTING
  • /doc/release_history
    -- then auto build of the Chemistry SDK reference _autodoc/qiskit

Flow steps:

  1. update the .rst files in the doc/ folder (or qiskit/ Python docstrings)
    at foo repository.
  2. push to foo repository stable branch (via a PR).
  3. when the CI (Travis) is completed for that merge, it will automatically
    push a commit to the qiskit.org repository with the HTML documentation.
  4. in turn, the CI (Travis) for the qiskit.org repository starts a deploy
    into the server that hosts qiskit.org.
  5. enjoy the new documentation at https://qiskit.org/documentation.

Questions.
@abdonrd and @diego-plan9 which option is best

  • is it better we push from qiskit-foo to this repo and then when this repo passes it pushes to qiskit.org so that the https://qiskit.org/documentation/foo is just a folder in here
  • option 2 or to have multiple auto ci going to the qiskit.org repo from all the elements and here to make the documentation.
  • option 3 [i like this best] is to remove all documentation from the elements and add it here and then generate from this folder the documentation on the qiskit.org/documentation. In the elements, we just have a readme pointing to this repo.
  • diego can you set up the documentation building and automation in this repo for an overview and install

Aqua documentation is not being rendered on qiskit.org

Now that the Qiskit Aqua and Qiskit Chemistry documentation has been transferred to this repository, what do we need to do to automatically update the qiskit.org/documentation Web site? Countless users are asking for the documentation to be made available to them.

The .. topic:: directive does not get rendered properly

Based on the template used to render the documentation's RST files in HTML, the .. topic:: directive does not render properly. Consider, for example, the following snippet of RST code:

.. topic:: Extending the Algorithm Library

    Algorithms and many of the components they use have been designed to be
    pluggable. A new algorithm may be developed according to the specific Application Programming
    Interface (API) provided by Aqua, and by simply adding its code to the collection of existing
    algorithms, that new algorithm  will be immediately recognized via dynamic lookup,
    and made available for use within the framework of Aqua.
    Specifically, to develop and deploy any new algorithm, the new algorithm class should derive from
    the ``QuantumAlgorithm`` class.  Along with any supporting  module, for immediate dynamic
    discovery, the new algorithm class can simply be placed in an appropriate folder in the
    ``qiskit_aqua\algorithms`` directory, just like the existing algorithms.  Aqua also allows for
    :ref:`aqua-dynamically-discovered-components`: new components can register themselves
    as Aqua extensions and be dynamically discovered at run time independent of their
    location in the file system.  This is done in order to encourage researchers and
    developers interested in :ref:`aqua-extending` to extend the Aqua framework with their novel
    research contributions.

Using a regular template, this is how the .. topic:: directive above gets rendered:
image

However, using the current template, the .. topic:: directive above does not get rendered in any special way and this is what one gets:
image

Can the current template get augmented to treat the .. topic:: directive as all the other directives? Alternatively, can we use a different template? The Aqua documentation makes extensive use of this directive.

Misleading indentation of some TOC entries

Some items/levels in the TOC are shown with the wrong indentation, hindering readability - for example:

toc

In the screenshot, the Terra organization entry is visually at the same level as Overview, but the real hierarchy is:

Qiskit Terra
    Overview
        Terra Organization
    The Quantum Circuit
    ...

Pinging @Borjagodoy - can you double check the relevant parts of the theme for the TOC? Please note that there might be other oddities potentially related, such as the indentation for an "entry that has subentries" vs the intentation for an "entry that has no subentries".

Also, it seems the original theme already had the collapsing/expanding functionality baked in by default (on the sample site, with some circles around the arrows and no extra changes) - can you evaluate if we can reuse it directly, instead of tuning the html and CSS?

community projects

In documentation, I want to make a file that has a list of community projects using qiskit.

The file should be
docs/community_qiskit.rst

and it would have a list of projects using qiskit to do cool things.

This would have so far (thanks @akarazeev to maintaining this project as a community project)

https://github.com/akarazeev/qiskit-slack-bot

I am sure there are more projects that we should highlight.

version info mismatch

Informations

  • Qiskit version: 0.7.1
    • I installed it from PyPI via pip3
  • Python version: 3.6.7
  • Operating system: Ubuntu 18.04

What is the current behavior?

Mismatching version information.

Steps to reproduce the problem

This is in an ipython3 shell:

$ ipython3                                                                                           
Python 3.6.7 (default, Oct 22 2018, 11:32:17)

In [1]: import pkg_resources                                                                                                     
In [2]: pkg_resources.get_distribution("qiskit").version                                                                         
Out[2]: '0.7.1'                                                                                                                  
                                                                                                                                 
In [3]: import qiskit                                                                                                            
In [4]: qiskit.__version__                                                                                                       
Out[4]: '0.7.0'                                                                                                                  

What is the expected behavior?

Both are 0.7.1

Suggested solutions

Fix the qiskit package hosted at PyPI

Adding a CODEOWNERS file in .github

Can we add a CODEOWNERS file in .github so that people responsible for a particular element of Aqua can more easily update the relevant documentation?

Aer roadmap

@chriseclectic i put something in for Aer but i don't really like it could you update the Aer section of doc/roadmap.rst

Add theme to documentation

What is the expected behavior?

Currently the documentation uses the default theme - we should spice it up and bring it in line with the qiskit.org overall design.

A first step would be to move the theme from terra - it might be a bit too specific (ie tied to terra quirks) at the moment, but we can start from it and tweak further. I'm self-assigning, but might need frontend help at some point.

Publish both stable and development documentation

What is the expected behavior?

From #39:

allow keeping both the "stable" documentation (the one relevant to published packages) and the "master" (the one for more bleeding edge users) available (and maybe older versions too?).

Include qiskit aqua and qiskit-chemistry in mega

We need to start making the plan to include qiskit aqua and qiskit chemistry into the default package.

There are many things to discuss.

  • Structure of package. I suggest it goes qiskit.aqua.blah and qiskit.aqua.chemistry.

  • the GUI and should not be part of the default so it needs to move to another repo

  • do we make an execution for aqua look and feel like qiskit terra

write a script that gets the list of authors

I think we need to have a file that check all the repositories for contributors and puts them together as a list in a file that is linked to in the readme rather than just linking to contributors to this repo.

Makefile pointing to wrong directories for aqua and chem autodoc?

@diego-plan9, can I get a sanity check from you?

Information

  • Qiskit version: latest
  • Python version: 3.7
  • Operating system: macOS 14.6

What is the current behavior?

make doc errors out while looking for Aqua and Chemistry directories

sphinx-apidoc --output docs/autodoc --separate --implicit-namespaces --module-first -d 16
<PATH_QISKIT>/qiskit_aqua
~/.../qiskit-terra/qiskit_aqua is not a directory.
make: *** [autodoc_aqua] Error 1

Steps to reproduce the problem

  1. Clone all of the repos with Qiskit doc in them.
  2. Run make doc

What is the expected behavior?

The Makefile should be pointing to the correct directories using pip show and grep.

Suggested solutions

I've edited the Makefile in a personal fork to make things work, but I'm wary that there's a reason why the Makefile is the way it is today that I'm not aware of, despite it not working for me locally.

simplify the ibm q provider documentation

between the section install, getting started and running on the real device we explain the same thing three times. Maybe, in the getting started we don't need explanations of setting up real devices but link back to the install and then the running on ibmq we put after the qiskit elements (before the roadmap) as advanced use of the ibm q provider.

IndexError occurs when installing qiskit 0.7.2 with pip 19.0.2

Informations

  • Qiskit version: 0.7.2
  • Python version: 3.6.7
  • Operating system: Ubuntu 18.10, macOS High Sierra
  • pip version: 19.0.2

What is the current behavior?

IndexError occurs when installing qiskit 0.7.2 with pip 19.0.2. pip <= 19.0.1 does not have this issue.

Steps to reproduce the problem

Run the following commands.

$ python -m venv test
$ source test/bin/activate
$ pip install -U pip wheel setuptools
$ pip install qiskit

Get the following result.

Building wheels for collected packages: qiskit
  Building wheel for qiskit (setup.py) ... done
Exception:
Traceback (most recent call last):
  File "/home/ima/envs/test/lib/python3.6/site-packages/pip/_internal/cli/base_command.py", line 179, in main
    status = self.run(options, args)
  File "/home/ima/envs/test/lib/python3.6/site-packages/pip/_internal/commands/install.py", line 355, in run
    session=session, autobuilding=True
  File "/home/ima/envs/test/lib/python3.6/site-packages/pip/_internal/wheel.py", line 980, in build
    python_tag=python_tag,
  File "/home/ima/envs/test/lib/python3.6/site-packages/pip/_internal/wheel.py", line 813, in _build_one
    python_tag=python_tag)
  File "/home/ima/envs/test/lib/python3.6/site-packages/pip/_internal/wheel.py", line 821, in _build_one_inside_env
    wheel_path = builder(req, temp_dir.path, python_tag=python_tag)
  File "/home/ima/envs/test/lib/python3.6/site-packages/pip/_internal/wheel.py", line 898, in _build_one_legacy
    return os.path.join(tempd, sorted(os.listdir(tempd))[0])
IndexError: list index out of range

Update(Feb 13): I confirmed that the same errors occurs on mac as well.

Update(Feb 14): I confirmed that pip==19.0.2 causes the error; pip<=19.0.1 has no problem.
pypa/pip@61fd802 seems cause it.

What is the expected behavior?

Install without error.

Suggested solutions

Use pip==19.0.1 for a while. I recommend the following workaround to create a new environment for a while.

$ python -m venv test
$ source test/bin/activate
$ pip install -U pip==19.0.1 wheel setuptools
$ pip install qiskit

release history

can we combine the release history in aer and terra and have it after the roadmap

bibtex file has duplicate names

Informations

  • Qiskit version:
  • Python version:
  • Operating system:

What is the current behavior?

Hitomi Takahashi and Hitomi Takahashi
Ismael Faro and Ismael Faro Sertage
Peng Liu and Peng Liu
Stefan Woerner and Stefen Worner
Steve Wood and Steve Wood

Steps to reproduce the problem

What is the expected behavior?

Suggested solutions

Automate pushing rendered documentation

In a similar way that terra documentation was handled, we should set up the CI and the project so documentation ends up being pushed to qiskit.org. Ideally:

  • allow keeping both the "stable" documentation (the one relevant to published packages) and the "master" (the one for more bleeding edge users) available (and maybe older versions too?).
  • for chapters where the main content is rendered from notebooks, automate their conversion.

Add information about working with several repositories

Coming from Qiskit/qiskit-ibmq-provider#24 (comment), now that we have several repositories and projects that have dependencies on each other, it would be beneficial to have a slightly more formal set of instructions aimed for developers on how to work with several repositories at the same time, as it is relatively common that working on qiskit-foo master requires using qiskit-bar master and similar scenarios.

Some informal instructions are at Qiskit/qiskit-ibmq-provider#24 and Qiskit/qiskit#1700, but it would be nice to have them in a single place (and also have the input of the other teams - the "oldest" project where such setup is needed is probably aer, so maybe @atilag or @chriseclectic have some documentation somewhere).

@jaygambetta , where do you think this information would be best placed? It should be only for developers - I was thinking that maybe CONTRIBUTING on this repo would make sense, but any other place sounds good too.

Qiskit is failing when updating to 0.7 from previous versions

The root cause of Qiskit/qiskit#1599 is as follows:

When upgrading, pip resolves the dependency tree of a package so that dependencies are installed before dependants. Finally, it installs the target package. During any of these installations, if there is a previous version of the package, pip first uninstalls the previous version, then it installs the new one.

When uninstalling a package, pip reads a record file listing all the files belonging to that package. Previous qiskit included all Terra files (now belonging to the qiskit-terra) and those get removed from the file system. Indeed, pip does not check if the files being removed belong to other packages.

visualizing quantum data

I think we need to think about the visualization section. It is really a visualization of quantum data of something. I think this should also go into the qiskit terra section.

What do you think @derivation?

Qiskit doesn't build on IBM i PASE (libperfstat is AIX-only)

Informations

  • Qiskit version: 0.7.1
  • Python version: 3.6.7
  • Operating system: IBM i 7.3 PASE

What is the current behavior?

building 'psutil._psutil_aix' extension
creating build/temp.os400-powerpc64-3.6
creating build/temp.os400-powerpc64-3.6/psutil
creating build/temp.os400-powerpc64-3.6/psutil/arch
creating build/temp.os400-powerpc64-3.6/psutil/arch/aix
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -O2 -g -maix64 -O2 -g -maix64 -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=548 -DPSUTIL_AIX=1 -I/home/JWOEHR/work/QISKit/envs/qiskit-0.7/include -I/QOpenSys/pkgs/include/python3.6m -c psutil/_psutil_common.c -o build/temp.os400-powerpc64-3.6/psutil/_psutil_common.o
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -O2 -g -maix64 -O2 -g -maix64 -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=548 -DPSUTIL_AIX=1 -I/home/JWOEHR/work/QISKit/envs/qiskit-0.7/include -I/QOpenSys/pkgs/include/python3.6m -c psutil/_psutil_posix.c -o build/temp.os400-powerpc64-3.6/psutil/_psutil_posix.o
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -O2 -g -maix64 -O2 -g -maix64 -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=548 -DPSUTIL_AIX=1 -I/home/JWOEHR/work/QISKit/envs/qiskit-0.7/include -I/QOpenSys/pkgs/include/python3.6m -c psutil/_psutil_aix.c -o build/temp.os400-powerpc64-3.6/psutil/_psutil_aix.o
psutil/_psutil_aix.c:48:25: fatal error: libperfstat.h: No such file or directory
#include <libperfstat.h>
^
compilation terminated.
error: command 'gcc' failed with exit status 1

Steps to reproduce the problem

pip install qiskit

What is the expected behavior?

That it build as it does on other platforms

Suggested solutions

Modify to be more IBM i PASE-aware which differs somewhat from the AIX environment which PASE is derived from.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.