How to install ``tqecd`` ======================== Requirements before installing ------------------------------ Python version ~~~~~~~~~~~~~~ The ``tqecd`` package only supports Python 3.10 and onward. If you have Python 3.9 or below, please update your Python installation. Additional toolchains ~~~~~~~~~~~~~~~~~~~~~ Some of the dependencies of ``tqecd`` are implemented using compiled languages. This is for example the case of the `pycryptosat `_ dependency. Pre-compiled Python packages that should be compatible with any GNU/Linux are provided by the author, but no pre-compiled package exist for Windows or MacOS. This means that, if you try to install the ``tqecd`` package on Windows or MacOS, a working C++ toolchain should also be installed on your system. Here is a list of potential issues you might encounter and how to solve them: - `Failed building wheel for pycryptosat `_ Installation procedure ---------------------- (optional) Create a new environment ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ It is a good practice to create a specific virtual environment for the ``tqecd`` package. One way of doing that is using the native ``venv`` package of your python installation: .. code-block:: bash mkdir venvs python -m venv venvs/tqecd # On GNU/Linux and MacOS source venvs/tqecd/bin/activate # On Windows ## In cmd.exe venvs\tqecd\Scripts\activate.bat ## In PowerShell venvs\tqecd\Scripts\Activate.ps1 Install the ``tqecd`` package ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The ``tqecd`` package is a regular Python package that can be installed using ``pip``. It is not (yet) available on the official Python Package Index PyPI, so you will have to manually provide the URL to install the package: .. code-block:: bash python -m pip install git+https://github.com/tqec/tqecd.git And that's it! You can test the installation by running .. code-block:: bash python -c "import tqecd" If the installation succeeded, the command should return without any message displayed. Else, a message like .. code-block:: Traceback (most recent call last): File "", line 1, in ModuleNotFoundError: No module named 'tqecd' should appear.