CQCL / tket

Source code for the TKET quantum compiler, Python bindings and utilities
https://tket.quantinuum.com/
Apache License 2.0
249 stars 48 forks source link

Pip-installing from source #804

Closed robertodr closed 1 year ago

robertodr commented 1 year ago

Hello, I am trying to install pytket from source, but the process fails:

$ python -m pip install .

  error: subprocess-exited-with-error

  × Building wheel for pytket (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [112 lines of output]
      running bdist_wheel
      running build
      running build_py
      copying pytket/_version.py -> build/lib.linux-x86_64-cpython-310/pytket
      running egg_info
      writing pytket.egg-info/PKG-INFO
      writing dependency_links to pytket.egg-info/dependency_links.txt
      writing requirements to pytket.egg-info/requires.txt
      writing top-level names to pytket.egg-info/top_level.txt
      reading manifest template 'MANIFEST.in'
      writing manifest file 'pytket.egg-info/SOURCES.txt'
      /tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/setuptools/command/build_py.py:202: SetuptoolsDeprecationWarning:     Installing 'pytket.circuit.display.js' as data is deprecated, please list it in `packages`.
          !!

          ############################
          # Package would be ignored #
          ############################
          Python recognizes 'pytket.circuit.display.js' as an importable package,
          but it is not listed in the `packages` configuration of setuptools.

          'pytket.circuit.display.js' has been automatically added to the distribution only
          because it may contain data files, but this behavior is likely to change
          in future versions of setuptools (and therefore is considered deprecated).

          Please make sure that 'pytket.circuit.display.js' is included as a package by using
          the `packages` configuration field or the proper discovery methods
          (for example by using `find_namespace_packages(...)`/`find_namespace:`
          instead of `find_packages(...)`/`find:`).

          You can read more about "package discovery" and "data files" on setuptools
          documentation page.

      !!

        check.warn(importable)
      /tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/setuptools/command/build_py.py:202: SetuptoolsDeprecationWarning:     Installing 'pytket.circuit.display.static' as data is deprecated, please list it in `packages`.
          !!

          ############################
          # Package would be ignored #
          ############################
          Python recognizes 'pytket.circuit.display.static' as an importable package,
          but it is not listed in the `packages` configuration of setuptools.

          'pytket.circuit.display.static' has been automatically added to the distribution only
          because it may contain data files, but this behavior is likely to change
          in future versions of setuptools (and therefore is considered deprecated).

          Please make sure that 'pytket.circuit.display.static' is included as a package by using
          the `packages` configuration field or the proper discovery methods
          (for example by using `find_namespace_packages(...)`/`find_namespace:`
          instead of `find_packages(...)`/`find:`).

          You can read more about "package discovery" and "data files" on setuptools
          documentation page.

      !!

        check.warn(importable)
      running build_ext
      ERROR: Profile not found: tket
      Traceback (most recent call last):
        File "/home/roberto/mambaforge/envs/dbg-pytket-install/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
          main()
        File "/home/roberto/mambaforge/envs/dbg-pytket-install/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
        File "/home/roberto/mambaforge/envs/dbg-pytket-install/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 251, in build_wheel
          return _build_backend().build_wheel(wheel_directory, config_settings,
        File "/tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 413, in build_wheel
          return self._build_with_temp_dir(['bdist_wheel'], '.whl',
        File "/tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 398, in _build_with_temp_dir
          self.run_setup()
        File "/tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 335, in run_setup
          exec(code, locals())
        File "<string>", line 235, in <module>
        File "/tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/setuptools/__init__.py", line 108, in setup
          return distutils.core.setup(**attrs)
        File "/tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 185, in setup
          return run_commands(dist)
        File "/tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
          dist.run_commands()
        File "/tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
          self.run_command(cmd)
        File "/tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/setuptools/dist.py", line 1221, in run_command
          super().run_command(command)
        File "/tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "/tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/wheel/bdist_wheel.py", line 343, in run
          self.run_command("build")
        File "/tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
          self.distribution.run_command(command)
        File "/tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/setuptools/dist.py", line 1221, in run_command
          super().run_command(command)
        File "/tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "/tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/setuptools/_distutils/command/build.py", line 131, in run
          self.run_command(cmd_name)
        File "/tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
          self.distribution.run_command(command)
        File "/tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/setuptools/dist.py", line 1221, in run_command
          super().run_command(command)
        File "/tmp/pip-build-env-1yegj6h4/overlay/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "<string>", line 73, in run
        File "<string>", line 189, in cmake_config
        File "/home/roberto/mambaforge/envs/dbg-pytket-install/lib/python3.10/subprocess.py", line 369, in check_call
          raise CalledProcessError(retcode, cmd)
      subprocess.CalledProcessError: Command '['conan', 'install', '--profile=tket', '--build=missing', '-o', 'tket:shared=True', '/home/roberto/Workspace/tket/pytket']' returned non-zero exit status 1.
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for pytket
ERROR: Could not build wheels for pytket, which is required to install pyproject.toml-based projects

It seems Conan errors out and I'm not familiar enough with it to know whether I can fix it on my own. For context, I'm trying to use pytket on Linux aarch64.

cqc-alec commented 1 year ago

Hi, FYI we will soon be releasing pre-built wheels for Linux/aarch64.

robertodr commented 1 year ago

That sounds great! Note that the above error also happens on Linux/x86_64 though.

cqc-alec commented 1 year ago

That sounds great! Note that the above error also happens on Linux/x86_64 though.

Yes, there are some preliminary steps you have to go through to get the build to work. These are outlined in the README (or you can look at the CI scripts in the .github/workflows directory to see the build steps).

robertodr commented 1 year ago

Thank you! I was looking at the online manual and didn't even check the README. Apologies! 🤦🏻

robertodr commented 1 year ago

I got almost all the way after following the instructions in the README. The process fails when running pip install . in the pytket folder, apparently when compiling boxes.cpp. I am guessing it's once again my fault for using GCC10? Here is the full error:

Building wheels for collected packages: pytket
  Building wheel for pytket (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for pytket (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [396 lines of output]
      /tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools_scm/git.py:135: UserWarning: "/home/vscode/deps/tket" is shallow and may cause errors
        warnings.warn(f'"{wd.path}" is shallow and may cause errors')
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.linux-aarch64-cpython-310
      creating build/lib.linux-aarch64-cpython-310/pytket
      copying pytket/_version.py -> build/lib.linux-aarch64-cpython-310/pytket
      copying pytket/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket
      creating build/lib.linux-aarch64-cpython-310/pytket/passes
      copying pytket/passes/_decompositions.py -> build/lib.linux-aarch64-cpython-310/pytket/passes
      copying pytket/passes/script.py -> build/lib.linux-aarch64-cpython-310/pytket/passes
      copying pytket/passes/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/passes
      copying pytket/passes/auto_rebase.py -> build/lib.linux-aarch64-cpython-310/pytket/passes
      creating build/lib.linux-aarch64-cpython-310/pytket/tailoring
      copying pytket/tailoring/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/tailoring
      creating build/lib.linux-aarch64-cpython-310/pytket/logging
      copying pytket/logging/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/logging
      creating build/lib.linux-aarch64-cpython-310/pytket/config
      copying pytket/config/pytket_config.py -> build/lib.linux-aarch64-cpython-310/pytket/config
      copying pytket/config/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/config
      creating build/lib.linux-aarch64-cpython-310/pytket/qasm
      copying pytket/qasm/qasm.py -> build/lib.linux-aarch64-cpython-310/pytket/qasm
      copying pytket/qasm/grammar.py -> build/lib.linux-aarch64-cpython-310/pytket/qasm
      copying pytket/qasm/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/qasm
      creating build/lib.linux-aarch64-cpython-310/pytket/partition
      copying pytket/partition/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/partition
      creating build/lib.linux-aarch64-cpython-310/pytket/utils
      copying pytket/utils/expectations.py -> build/lib.linux-aarch64-cpython-310/pytket/utils
      copying pytket/utils/distribution.py -> build/lib.linux-aarch64-cpython-310/pytket/utils
      copying pytket/utils/operators.py -> build/lib.linux-aarch64-cpython-310/pytket/utils
      copying pytket/utils/graph.py -> build/lib.linux-aarch64-cpython-310/pytket/utils
      copying pytket/utils/term_sequence.py -> build/lib.linux-aarch64-cpython-310/pytket/utils
      copying pytket/utils/results.py -> build/lib.linux-aarch64-cpython-310/pytket/utils
      copying pytket/utils/outcomearray.py -> build/lib.linux-aarch64-cpython-310/pytket/utils
      copying pytket/utils/measurements.py -> build/lib.linux-aarch64-cpython-310/pytket/utils
      copying pytket/utils/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/utils
      copying pytket/utils/prepare.py -> build/lib.linux-aarch64-cpython-310/pytket/utils
      copying pytket/utils/spam.py -> build/lib.linux-aarch64-cpython-310/pytket/utils
      copying pytket/utils/symbolic.py -> build/lib.linux-aarch64-cpython-310/pytket/utils
      creating build/lib.linux-aarch64-cpython-310/pytket/circuit
      copying pytket/circuit/logic_exp.py -> build/lib.linux-aarch64-cpython-310/pytket/circuit
      copying pytket/circuit/add_condition.py -> build/lib.linux-aarch64-cpython-310/pytket/circuit
      copying pytket/circuit/decompose_classical.py -> build/lib.linux-aarch64-cpython-310/pytket/circuit
      copying pytket/circuit/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/circuit
      creating build/lib.linux-aarch64-cpython-310/pytket/architecture
      copying pytket/architecture/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/architecture
      creating build/lib.linux-aarch64-cpython-310/pytket/zx
      copying pytket/zx/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/zx
      creating build/lib.linux-aarch64-cpython-310/pytket/predicates
      copying pytket/predicates/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/predicates
      creating build/lib.linux-aarch64-cpython-310/pytket/placement
      copying pytket/placement/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/placement
      creating build/lib.linux-aarch64-cpython-310/pytket/wasm
      copying pytket/wasm/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/wasm
      copying pytket/wasm/wasm.py -> build/lib.linux-aarch64-cpython-310/pytket/wasm
      creating build/lib.linux-aarch64-cpython-310/pytket/tableau
      copying pytket/tableau/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/tableau
      creating build/lib.linux-aarch64-cpython-310/pytket/transform
      copying pytket/transform/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/transform
      creating build/lib.linux-aarch64-cpython-310/pytket/quipper
      copying pytket/quipper/quipper.py -> build/lib.linux-aarch64-cpython-310/pytket/quipper
      copying pytket/quipper/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/quipper
      creating build/lib.linux-aarch64-cpython-310/pytket/backends
      copying pytket/backends/backend_exceptions.py -> build/lib.linux-aarch64-cpython-310/pytket/backends
      copying pytket/backends/backendinfo.py -> build/lib.linux-aarch64-cpython-310/pytket/backends
      copying pytket/backends/resulthandle.py -> build/lib.linux-aarch64-cpython-310/pytket/backends
      copying pytket/backends/status.py -> build/lib.linux-aarch64-cpython-310/pytket/backends
      copying pytket/backends/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/backends
      copying pytket/backends/backendresult.py -> build/lib.linux-aarch64-cpython-310/pytket/backends
      copying pytket/backends/backend.py -> build/lib.linux-aarch64-cpython-310/pytket/backends
      creating build/lib.linux-aarch64-cpython-310/pytket/mapping
      copying pytket/mapping/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/mapping
      creating build/lib.linux-aarch64-cpython-310/pytket/pauli
      copying pytket/pauli/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/pauli
      creating build/lib.linux-aarch64-cpython-310/pytket/utils/serialization
      copying pytket/utils/serialization/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/utils/serialization
      creating build/lib.linux-aarch64-cpython-310/pytket/circuit/display
      copying pytket/circuit/display/__init__.py -> build/lib.linux-aarch64-cpython-310/pytket/circuit/display
      creating build/lib.linux-aarch64-cpython-310/pytket/qasm/includes
      copying pytket/qasm/includes/_qelib1_decls.py -> build/lib.linux-aarch64-cpython-310/pytket/qasm/includes
      copying pytket/qasm/includes/_hqslib1_defs.py -> build/lib.linux-aarch64-cpython-310/pytket/qasm/includes
      copying pytket/qasm/includes/_qelib1_defs.py -> build/lib.linux-aarch64-cpython-310/pytket/qasm/includes
      copying pytket/qasm/includes/load_includes.py -> build/lib.linux-aarch64-cpython-310/pytket/qasm/includes
      copying pytket/qasm/includes/_hqslib1_dev_decls.py -> build/lib.linux-aarch64-cpython-310/pytket/qasm/includes
      copying pytket/qasm/includes/_hqslib1_dev_defs.py -> build/lib.linux-aarch64-cpython-310/pytket/qasm/includes
      copying pytket/qasm/includes/_oqclib1_decls.py -> build/lib.linux-aarch64-cpython-310/pytket/qasm/includes
      copying pytket/qasm/includes/_oqclib1_defs.py -> build/lib.linux-aarch64-cpython-310/pytket/qasm/includes
      copying pytket/qasm/includes/_hqslib1_decls.py -> build/lib.linux-aarch64-cpython-310/pytket/qasm/includes
      running egg_info
      writing pytket.egg-info/PKG-INFO
      writing dependency_links to pytket.egg-info/dependency_links.txt
      writing requirements to pytket.egg-info/requires.txt
      writing top-level names to pytket.egg-info/top_level.txt
      reading manifest template 'MANIFEST.in'
      writing manifest file 'pytket.egg-info/SOURCES.txt'
      /tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools/command/build_py.py:202: SetuptoolsDeprecationWarning:     Installing 'pytket.circuit.display.js' as data is deprecated, please list it in `packages`.
          !!

          ############################
          # Package would be ignored #
          ############################
          Python recognizes 'pytket.circuit.display.js' as an importable package,
          but it is not listed in the `packages` configuration of setuptools.

          'pytket.circuit.display.js' has been automatically added to the distribution only
          because it may contain data files, but this behavior is likely to change
          in future versions of setuptools (and therefore is considered deprecated).

          Please make sure that 'pytket.circuit.display.js' is included as a package by using
          the `packages` configuration field or the proper discovery methods
          (for example by using `find_namespace_packages(...)`/`find_namespace:`
          instead of `find_packages(...)`/`find:`).

          You can read more about "package discovery" and "data files" on setuptools
          documentation page.

      !!

        check.warn(importable)
      /tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools/command/build_py.py:202: SetuptoolsDeprecationWarning:     Installing 'pytket.circuit.display.static' as data is deprecated, please list it in `packages`.
          !!

          ############################
          # Package would be ignored #
          ############################
          Python recognizes 'pytket.circuit.display.static' as an importable package,
          but it is not listed in the `packages` configuration of setuptools.

          'pytket.circuit.display.static' has been automatically added to the distribution only
          because it may contain data files, but this behavior is likely to change
          in future versions of setuptools (and therefore is considered deprecated).

          Please make sure that 'pytket.circuit.display.static' is included as a package by using
          the `packages` configuration field or the proper discovery methods
          (for example by using `find_namespace_packages(...)`/`find_namespace:`
          instead of `find_packages(...)`/`find:`).

          You can read more about "package discovery" and "data files" on setuptools
          documentation page.

      !!

        check.warn(importable)
      copying pytket/py.typed -> build/lib.linux-aarch64-cpython-310/pytket
      creating build/lib.linux-aarch64-cpython-310/pytket/circuit/display/js
      copying pytket/circuit/display/js/main.js -> build/lib.linux-aarch64-cpython-310/pytket/circuit/display/js
      creating build/lib.linux-aarch64-cpython-310/pytket/circuit/display/static
      copying pytket/circuit/display/static/circuit.html -> build/lib.linux-aarch64-cpython-310/pytket/circuit/display/static
      copying pytket/circuit/display/static/head_imports.html -> build/lib.linux-aarch64-cpython-310/pytket/circuit/display/static
      copying pytket/qasm/includes/hqslib1.inc -> build/lib.linux-aarch64-cpython-310/pytket/qasm/includes
      copying pytket/qasm/includes/hqslib1_dev.inc -> build/lib.linux-aarch64-cpython-310/pytket/qasm/includes
      copying pytket/qasm/includes/oqclib1.inc -> build/lib.linux-aarch64-cpython-310/pytket/qasm/includes
      copying pytket/qasm/includes/qelib1.inc -> build/lib.linux-aarch64-cpython-310/pytket/qasm/includes
      running build_ext
      WARN: Migration: Updating settings.yml
      Configuration:
      [settings]
      arch=armv8
      arch_build=armv8
      build_type=Release
      compiler=gcc
      compiler.libcxx=libstdc++11
      compiler.version=10
      os=Linux
      os_build=Linux
      [options]
      tket:shared=True
      tklog:shared=True
      [build_requires]
      [env]

      pybind11_json/0.2.13: Not found in local cache, looking in remotes...
      pybind11_json/0.2.13: Trying with 'tket-libs'...
      Downloading conanmanifest.txt
      Downloading conanfile.py
      Downloading conan_export.tgz
      pybind11_json/0.2.13: Downloaded recipe revision 0c3be1ad028f4b76a346befbe96798ac
      WARN: pybind11_json/0.2.13: requirement nlohmann_json/3.9.1 overridden by your conanfile to nlohmann_json/3.11.2
      WARN: pybind11_json/0.2.13: requirement pybind11/2.6.2 overridden by your conanfile to pybind11/2.10.3
      conanfile.txt: Installing package
      Requirements
          boost/1.81.0 from 'tket-libs' - Cache
          bzip2/1.0.8 from 'tket-libs' - Cache
          eigen/3.4.0 from 'tket-libs' - Cache
          gmp/6.2.1 from 'tket-libs' - Cache
          libbacktrace/cci.20210118 from 'tket-libs' - Cache
          nlohmann_json/3.11.2 from 'tket-libs' - Cache
          pybind11/2.10.3 from local cache - Cache
          pybind11_json/0.2.13 from 'tket-libs' - Downloaded
          symengine/0.9.0 from 'tket-libs' - Cache
          tkassert/0.1.1@tket/stable from 'tket-libs' - Cache
          tket/1.0.59@tket/stable from local cache - Cache
          tklog/0.1.2@tket/stable from 'tket-libs' - Cache
          tkrng/0.1.2@tket/stable from 'tket-libs' - Cache
          tktokenswap/0.1.2@tket/stable from 'tket-libs' - Cache
          tkwsm/0.2.1@tket/stable from 'tket-libs' - Cache
          zlib/1.2.13 from 'tket-libs' - Cache
      Packages
          boost/1.81.0:edb21371987e26d5bcc16afea9d6bb8eabd4dc39 - Cache
          bzip2/1.0.8:4673417891ef51c795821d72971b713c8e8bec5a - Cache
          eigen/3.4.0:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache
          gmp/6.2.1:b76be4c52610e53028230f2c04ab06d999b183a1 - Cache
          libbacktrace/cci.20210118:4abea69857a62f95f76f0917ecf45464337054db - Cache
          nlohmann_json/3.11.2:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache
          pybind11/2.10.3:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache
          pybind11_json/0.2.13:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Download
          symengine/0.9.0:85a7d80aa7d72fe3c579c4f315147446b4a2b03c - Cache
          tkassert/0.1.1@tket/stable:eb833a40f34b21786556f76d63081957b22226d0 - Cache
          tket/1.0.59@tket/stable:d40692dae1acb9968fb6816b2a414a127a1eeaf2 - Cache
          tklog/0.1.2@tket/stable:64018126bb6152fbe3087691cd727e1341ee4b63 - Cache
          tkrng/0.1.2@tket/stable:88abcc74e28af662737a51ad32b4ade060691a04 - Cache
          tktokenswap/0.1.2@tket/stable:8cbfcd36eae4edca81f749acdd56065422947000 - Cache
          tkwsm/0.2.1@tket/stable:4138de63ce552091f14c7cab43d5f35050ec4771 - Cache
          zlib/1.2.13:4abea69857a62f95f76f0917ecf45464337054db - Cache

      Installing (downloading, building) binaries...
      pybind11_json/0.2.13: Retrieving package 5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 from remote 'tket-libs'
      Downloading conanmanifest.txt
      Downloading conaninfo.txt
      Downloading conan_package.tgz
      pybind11_json/0.2.13: Package installed 5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9
      pybind11_json/0.2.13: Downloaded package revision 4adeff1e46e25478213f5ce71f6b1ec9
      bzip2/1.0.8: Already installed!
      eigen/3.4.0: Already installed!
      gmp/6.2.1: Already installed!
      libbacktrace/cci.20210118: Already installed!
      nlohmann_json/3.11.2: Already installed!
      pybind11/2.10.3: Already installed!
      tklog/0.1.2@tket/stable: Already installed!
      tkrng/0.1.2@tket/stable: Already installed!
      zlib/1.2.13: Already installed!
      boost/1.81.0: Already installed!
      symengine/0.9.0: Already installed!
      tkassert/0.1.1@tket/stable: Already installed!
      tktokenswap/0.1.2@tket/stable: Already installed!
      tkwsm/0.2.1@tket/stable: Already installed!
      tket/1.0.59@tket/stable: Already installed!
      conanfile.txt: Generator cmake_find_package created Findtket.cmake
      conanfile.txt: Generator cmake_find_package created Findpybind11_json.cmake
      conanfile.txt: Generator cmake_find_package created Findsymengine.cmake
      conanfile.txt: Generator cmake_find_package created FindEigen3.cmake
      conanfile.txt: Generator cmake_find_package created Findnlohmann_json.cmake
      conanfile.txt: Generator cmake_find_package created Findtktokenswap.cmake
      conanfile.txt: Generator cmake_find_package created Findtkwsm.cmake
      conanfile.txt: Generator cmake_find_package created Findpybind11.cmake
      conanfile.txt: Generator cmake_find_package created FindBoost.cmake
      conanfile.txt: Generator cmake_find_package created Findgmp.cmake
      conanfile.txt: Generator cmake_find_package created Findtkassert.cmake
      conanfile.txt: Generator cmake_find_package created Findtkrng.cmake
      conanfile.txt: Generator cmake_find_package created FindZLIB.cmake
      conanfile.txt: Generator cmake_find_package created FindBZip2.cmake
      conanfile.txt: Generator cmake_find_package created Findlibbacktrace.cmake
      conanfile.txt: Generator cmake_find_package created Findtklog.cmake
      conanfile.txt: Generator cmake created conanbuildinfo.cmake
      conanfile.txt: Generator txt created conanbuildinfo.txt
      conanfile.txt: Aggregating env generators
      conanfile.txt: Generated conaninfo.txt
      conanfile.txt: Generated graphinfo
      -- The C compiler identification is GNU 10.2.1
      -- The CXX compiler identification is GNU 10.2.1
      -- Detecting C compiler ABI info
      -- Detecting C compiler ABI info - done
      -- Check for working C compiler: /usr/bin/cc - skipped
      -- Detecting C compile features
      -- Detecting C compile features - done
      -- Detecting CXX compiler ABI info
      -- Detecting CXX compiler ABI info - done
      -- Check for working CXX compiler: /usr/bin/c++ - skipped
      -- Detecting CXX compile features
      -- Detecting CXX compile features - done
      -- Conan: Using cmake global configuration
      -- Conan: Adjusting default RPATHs Conan policies
      -- Conan: Adjusting language standard
      -- Current conanbuildinfo.cmake directory: /home/vscode/deps/tket/pytket/build/temp.linux-aarch64-cpython-310
      -- Conan: Compiler GCC>=5, checking major version 10
      -- Conan: Checking correct version: 10
      -- Found PythonInterp: /workspaces/hal9000/.venv/bin/python (found suitable version "3.10.10", minimum required is "3.6")
      -- Found PythonLibs: /usr/local/lib/libpython3.10.so
      CMake Warning at /home/vscode/.conan/data/pybind11/2.10.3/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/lib/cmake/pybind11/pybind11Tools.cmake:24 (message):
        Set PYBIND11_PYTHON_VERSION to search for a specific version, not
        PYTHON_VERSION (which is an output).  Assuming that is what you meant to do
        and continuing anyway.
      Call Stack (most recent call first):
        /home/vscode/.conan/data/pybind11/2.10.3/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/lib/cmake/pybind11/pybind11Common.cmake:180 (include)
        /home/vscode/.conan/data/pybind11/2.10.3/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/lib/cmake/pybind11/pybind11Install.cmake:248 (include)
        build/temp.linux-aarch64-cpython-310/conanbuildinfo.cmake:2456 (include)
        build/temp.linux-aarch64-cpython-310/conanbuildinfo.cmake:1928 (conan_include_build_modules)
        CMakeLists.txt:28 (conan_basic_setup)

      -- Performing Test HAS_FLTO
      -- Performing Test HAS_FLTO - Success
      -- Found pybind11: /home/vscode/.conan/data/pybind11/2.10.3/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include (found version "")
      -- Conan: Using autogenerated Findpybind11.cmake
      -- Found pybind11: 2.10.3 (found version "2.10.3")
      -- Configuring done
      -- Generating done
      -- Build files have been written to: /home/vscode/deps/tket/pytket/build/temp.linux-aarch64-cpython-310
      [1/2] Building CXX object CMakeFiles/logging.dir/binders/logging.cpp.o
      [1/2] Building CXX object CMakeFiles/utils_serialization.dir/binders/utils_serialization.cpp.o
      [2/2] Linking CXX shared module ../lib.linux-aarch64-cpython-310/pytket/_tket/logging.cpython-310-aarch64-linux-gnu.so
      ninja: warning: premature end of file; recovering
      [2/2] Linking CXX shared module ../lib.linux-aarch64-cpython-310/pytket/_tket/utils_serialization.cpython-310-aarch64-linux-gnu.so
      [1/9] Building CXX object CMakeFiles/circuit.dir/binders/circuit/unitid.cpp.o
      [2/9] Building CXX object CMakeFiles/circuit.dir/binders/circuit/classical.cpp.o
      [3/9] Building CXX object CMakeFiles/circuit.dir/binders/circuit/boxes.cpp.o
      FAILED: CMakeFiles/circuit.dir/binders/circuit/boxes.cpp.o
      /usr/bin/ccache /usr/bin/c++ -Dcircuit_EXPORTS -I/home/vscode/.conan/data/tket/1.0.59/tket/stable/package/d40692dae1acb9968fb6816b2a414a127a1eeaf2/include -I/home/vscode/.conan/data/pybind11_json/0.2.13/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include -I/home/vscode/.conan/data/symengine/0.9.0/_/_/package/85a7d80aa7d72fe3c579c4f315147446b4a2b03c/include -I/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3 -I/home/vscode/.conan/data/nlohmann_json/3.11.2/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include -I/home/vscode/.conan/data/tktokenswap/0.1.2/tket/stable/package/8cbfcd36eae4edca81f749acdd56065422947000/include -I/home/vscode/.conan/data/tkwsm/0.2.1/tket/stable/package/4138de63ce552091f14c7cab43d5f35050ec4771/include -I/home/vscode/.conan/data/pybind11/2.10.3/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/pybind11 -I/home/vscode/.conan/data/boost/1.81.0/_/_/package/edb21371987e26d5bcc16afea9d6bb8eabd4dc39/include -I/home/vscode/.conan/data/gmp/6.2.1/_/_/package/b76be4c52610e53028230f2c04ab06d999b183a1/include -I/home/vscode/.conan/data/tkassert/0.1.1/tket/stable/package/eb833a40f34b21786556f76d63081957b22226d0/include -I/home/vscode/.conan/data/tkrng/0.1.2/tket/stable/package/88abcc74e28af662737a51ad32b4ade060691a04/include -I/home/vscode/.conan/data/zlib/1.2.13/_/_/package/4abea69857a62f95f76f0917ecf45464337054db/include -I/home/vscode/.conan/data/bzip2/1.0.8/_/_/package/4673417891ef51c795821d72971b713c8e8bec5a/include -I/home/vscode/.conan/data/libbacktrace/cci.20210118/_/_/package/4abea69857a62f95f76f0917ecf45464337054db/include -I/home/vscode/.conan/data/tklog/0.1.2/tket/stable/package/64018126bb6152fbe3087691cd727e1341ee4b63/include -I../../binders/include -isystem /home/vscode/.conan/data/pybind11/2.10.3/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include -isystem /usr/local/include/python3.10 -DVERSION_INFO=\"1.13.2\"   -Wall -Wextra -Werror -Wunreachable-code -Wunused -Wno-redundant-move -O3 -DNDEBUG  -fPIC -fvisibility=hidden -DBOOST_STACKTRACE_ADDR2LINE_LOCATION=\"/usr/bin/addr2line\" -DBOOST_STACKTRACE_USE_ADDR2LINE -DBOOST_STACKTRACE_USE_BACKTRACE -DBOOST_STACKTRACE_USE_NOOP -DEIGEN_MPL2_ONLY -flto -fno-fat-lto-objects -std=c++2a -MD -MT CMakeFiles/circuit.dir/binders/circuit/boxes.cpp.o -MF CMakeFiles/circuit.dir/binders/circuit/boxes.cpp.o.d -o CMakeFiles/circuit.dir/binders/circuit/boxes.cpp.o -c ../../binders/circuit/boxes.cpp
      c++: fatal error: Killed signal terminated program cc1plus
      compilation terminated.
      [4/9] Building CXX object CMakeFiles/circuit.dir/binders/circuit/library.cpp.o
      [5/9] Building CXX object CMakeFiles/circuit.dir/binders/circuit/main.cpp.o
      [6/9] Building CXX object CMakeFiles/circuit.dir/binders/circuit/Circuit/add_classical_op.cpp.o
      [1/2] Building CXX object CMakeFiles/partition.dir/binders/partition.cpp.o
      [1/2] Building CXX object CMakeFiles/passes.dir/binders/passes.cpp.o
      [1/2] Building CXX object CMakeFiles/predicates.dir/binders/predicates.cpp.o
      [2/2] Linking CXX shared module ../lib.linux-aarch64-cpython-310/pytket/_tket/partition.cpython-310-aarch64-linux-gnu.so
      ninja: warning: premature end of file; recovering
      [7/9] Building CXX object CMakeFiles/circuit.dir/binders/circuit/Circuit/main.cpp.o
      [2/2] Linking CXX shared module ../lib.linux-aarch64-cpython-310/pytket/_tket/passes.cpython-310-aarch64-linux-gnu.so
      ninja: warning: premature end of file; recovering
      [2/2] Linking CXX shared module ../lib.linux-aarch64-cpython-310/pytket/_tket/predicates.cpython-310-aarch64-linux-gnu.so
      [8/9] Building CXX object CMakeFiles/circuit.dir/binders/circuit/Circuit/add_op.cpp.o
      ninja: build stopped: subcommand failed.
      ninja: warning: premature end of file; recovering
      [1/2] Building CXX object CMakeFiles/pauli.dir/binders/pauli.cpp.o
      [2/2] Linking CXX shared module ../lib.linux-aarch64-cpython-310/pytket/_tket/pauli.cpython-310-aarch64-linux-gnu.so
      [1/2] Building CXX object CMakeFiles/mapping.dir/binders/mapping.cpp.o
      [1/2] Building CXX object CMakeFiles/tailoring.dir/binders/tailoring.cpp.o
      [1/2] Building CXX object CMakeFiles/transform.dir/binders/transform.cpp.o
      [2/2] Linking CXX shared module ../lib.linux-aarch64-cpython-310/pytket/_tket/mapping.cpython-310-aarch64-linux-gnu.so
      [2/2] Linking CXX shared module ../lib.linux-aarch64-cpython-310/pytket/_tket/tailoring.cpython-310-aarch64-linux-gnu.so
      [2/2] Linking CXX shared module ../lib.linux-aarch64-cpython-310/pytket/_tket/transform.cpython-310-aarch64-linux-gnu.so
      Traceback (most recent call last):
        File "/workspaces/hal9000/.venv/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
          main()
        File "/workspaces/hal9000/.venv/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
        File "/workspaces/hal9000/.venv/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 251, in build_wheel
          return _build_backend().build_wheel(wheel_directory, config_settings,
        File "/tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 413, in build_wheel
          return self._build_with_temp_dir(['bdist_wheel'], '.whl',
        File "/tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 398, in _build_with_temp_dir
          self.run_setup()
        File "/tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 335, in run_setup
          exec(code, locals())
        File "<string>", line 235, in <module>
        File "/tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools/__init__.py", line 108, in setup
          return distutils.core.setup(**attrs)
        File "/tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 185, in setup
          return run_commands(dist)
        File "/tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
          dist.run_commands()
        File "/tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
          self.run_command(cmd)
        File "/tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools/dist.py", line 1221, in run_command
          super().run_command(command)
        File "/tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "/tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/wheel/bdist_wheel.py", line 343, in run
          self.run_command("build")
        File "/tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
          self.distribution.run_command(command)
        File "/tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools/dist.py", line 1221, in run_command
          super().run_command(command)
        File "/tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "/tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools/_distutils/command/build.py", line 131, in run
          self.run_command(cmd_name)
        File "/tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
          self.distribution.run_command(command)
        File "/tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools/dist.py", line 1221, in run_command
          super().run_command(command)
        File "/tmp/pip-build-env-8vb3s7w6/overlay/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "<string>", line 81, in run
        File "/usr/local/lib/python3.10/concurrent/futures/_base.py", line 621, in result_iterator
          yield _result_or_cancel(fs.pop())
        File "/usr/local/lib/python3.10/concurrent/futures/_base.py", line 319, in _result_or_cancel
          return fut.result(timeout)
        File "/usr/local/lib/python3.10/concurrent/futures/_base.py", line 458, in result
          return self.__get_result()
        File "/usr/local/lib/python3.10/concurrent/futures/_base.py", line 403, in __get_result
          raise self._exception
        File "/usr/local/lib/python3.10/concurrent/futures/thread.py", line 58, in run
          result = self.fn(*self.args, **self.kwargs)
        File "<string>", line 199, in build_extension
        File "/usr/local/lib/python3.10/subprocess.py", line 369, in check_call
          raise CalledProcessError(retcode, cmd)
      subprocess.CalledProcessError: Command '['cmake', '--build', '.', '--target', 'circuit', '--config', 'Release']' returned non-zero exit status 1.
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for pytket
Failed to build pytket
ERROR: Could not build wheels for pytket, which is required to install pyproject.toml-based projects
cqc-alec commented 1 year ago

Unfortunately we can't see the actual error there, though we can see the compilation command that caused it, so you might have to copy that command and run in (in the appropriate directory (CMakeFiles?)) to get a clue.

robertodr commented 1 year ago

hei again! I've gotten back to poking at this. Following the README, I've updated my GCC to version 11 (I was using 10 before) Now the build gets stuck at compiling TKET itself with an error from Eigen:

tkwsm/0.2.1@tket/stable: Package 'a3d7e142391f65058945e2b4a09666ef15ad7427' built
tkwsm/0.2.1@tket/stable: Build folder /home/vscode/.conan/data/tkwsm/0.2.1/tket/stable/build/a3d7e142391f65058945e2b4a09666ef15ad7427
tkwsm/0.2.1@tket/stable: Generated conaninfo.txt
tkwsm/0.2.1@tket/stable: Generated conanbuildinfo.txt
tkwsm/0.2.1@tket/stable: Generating the package
tkwsm/0.2.1@tket/stable: Package folder /home/vscode/.conan/data/tkwsm/0.2.1/tket/stable/package/a3d7e142391f65058945e2b4a09666ef15ad7427
tkwsm/0.2.1@tket/stable: Calling package()
tkwsm/0.2.1@tket/stable package(): Packaged 44 '.hpp' files
tkwsm/0.2.1@tket/stable package(): Packaged 1 '.a' file: libtkwsm.a
tkwsm/0.2.1@tket/stable: Package 'a3d7e142391f65058945e2b4a09666ef15ad7427' created
tkwsm/0.2.1@tket/stable: Created package revision bf1d02e7cfac546413bdfa41d1c80bb3
tket/1.0.59@tket/stable: Configuring sources in /home/vscode/.conan/data/tket/1.0.59/tket/stable/source
tket/1.0.59@tket/stable: Copying sources to build folder
tket/1.0.59@tket/stable: Building your package in /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567
tket/1.0.59@tket/stable: Generator cmake created conanbuildinfo.cmake
tket/1.0.59@tket/stable: Aggregating env generators
tket/1.0.59@tket/stable: Calling build()
-- The C compiler identification is GNU 11.3.0
-- The CXX compiler identification is GNU 11.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Conan: called by CMake conan helper
-- Conan: called inside local cache
-- Conan: Adjusting output directories
-- Conan: Using cmake global configuration
-- Conan: Adjusting default RPATHs Conan policies
-- Conan: Adjusting language standard
-- Conan: Compiler GCC>=5, checking major version 11
-- Conan: Checking correct version: 11
-- Conan: C++ stdlib: libstdc++11
-- Configuring done
-- Generating done
CMake Warning:
  Manually-specified variables were not used by the project:

    CMAKE_EXPORT_NO_PACKAGE_REGISTRY
    CMAKE_INSTALL_BINDIR
    CMAKE_INSTALL_DATAROOTDIR
    CMAKE_INSTALL_INCLUDEDIR
    CMAKE_INSTALL_LIBDIR
    CMAKE_INSTALL_LIBEXECDIR
    CMAKE_INSTALL_OLDINCLUDEDIR
    CMAKE_INSTALL_SBINDIR

-- Build files have been written to: /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567
[  4%] Building CXX object Utils/CMakeFiles/tket-Utils.dir/UnitID.cpp.o
[  4%] Building CXX object Utils/CMakeFiles/tket-Utils.dir/PauliStrings.cpp.o
[  4%] Building CXX object Utils/CMakeFiles/tket-Utils.dir/CosSinDecomposition.cpp.o
[  4%] Building CXX object Utils/CMakeFiles/tket-Utils.dir/HelperFunctions.cpp.o
[  4%] Building CXX object Utils/CMakeFiles/tket-Utils.dir/MatrixAnalysis.cpp.o
[  4%] Building CXX object Utils/CMakeFiles/tket-Utils.dir/Expression.cpp.o
In file included from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Core:214,
                 from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Dense:1,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/EigenConfig.hpp:36,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/PauliStrings.hpp:24,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/PauliStrings.cpp:15:
/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h: In function ‘Packet Eigen::internal::pload(const typename Eigen::internal::unpacket_traits<T>::type*) [with Packet = Eigen::internal::eigen_packet_wrapper<int, 2>; typename Eigen::internal::unpacket_traits<T>::type = signed char]’:
/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h:1671:9: error: ‘void* memcpy(void*, const void*, size_t)’ copying an object of non-trivial type ‘Eigen::internal::Packet4c’ {aka ‘struct Eigen::internal::eigen_packet_wrapper<int, 2>’} from an array of ‘const int8_t’ {aka ‘const signed char’} [-Werror=class-memaccess]
 1671 |   memcpy(&res, from, sizeof(Packet4c));
      |   ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Core:172,
                 from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Dense:1,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/EigenConfig.hpp:36,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/PauliStrings.hpp:24,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/PauliStrings.cpp:15:
/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/src/Core/GenericPacketMath.h:159:8: note: ‘Eigen::internal::Packet4c’ {aka ‘struct Eigen::internal::eigen_packet_wrapper<int, 2>’} declared here
  159 | struct eigen_packet_wrapper
      |        ^~~~~~~~~~~~~~~~~~~~
In file included from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Core:214,
                 from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Dense:1,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/EigenConfig.hpp:36,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/PauliStrings.hpp:24,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/PauliStrings.cpp:15:
/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h: In function ‘Packet Eigen::internal::ploadu(const typename Eigen::internal::unpacket_traits<T>::type*) [with Packet = Eigen::internal::eigen_packet_wrapper<int, 2>; typename Eigen::internal::unpacket_traits<T>::type = signed char]’:
/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h:1716:9: error: ‘void* memcpy(void*, const void*, size_t)’ copying an object of non-trivial type ‘Eigen::internal::Packet4c’ {aka ‘struct Eigen::internal::eigen_packet_wrapper<int, 2>’} from an array of ‘const int8_t’ {aka ‘const signed char’} [-Werror=class-memaccess]
 1716 |   memcpy(&res, from, sizeof(Packet4c));
      |   ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Core:172,
                 from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Dense:1,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/EigenConfig.hpp:36,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/PauliStrings.hpp:24,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/PauliStrings.cpp:15:
/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/src/Core/GenericPacketMath.h:159:8: note: ‘Eigen::internal::Packet4c’ {aka ‘struct Eigen::internal::eigen_packet_wrapper<int, 2>’} declared here
  159 | struct eigen_packet_wrapper
      |        ^~~~~~~~~~~~~~~~~~~~
cc1plus: all warnings being treated as errors
gmake[2]: *** [Utils/CMakeFiles/tket-Utils.dir/build.make:118: Utils/CMakeFiles/tket-Utils.dir/PauliStrings.cpp.o] Error 1
gmake[2]: *** Waiting for unfinished jobs....
In file included from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Core:214,
                 from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Dense:1,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/EigenConfig.hpp:36,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/CosSinDecomposition.hpp:17,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/CosSinDecomposition.cpp:15:
/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h: In function ‘Packet Eigen::internal::pload(const typename Eigen::internal::unpacket_traits<T>::type*) [with Packet = Eigen::internal::eigen_packet_wrapper<int, 2>; typename Eigen::internal::unpacket_traits<T>::type = signed char]’:
/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h:1671:9: error: ‘void* memcpy(void*, const void*, size_t)’ copying an object of non-trivial type ‘Eigen::internal::Packet4c’ {aka ‘struct Eigen::internal::eigen_packet_wrapper<int, 2>’} from an array of ‘const int8_t’ {aka ‘const signed char’} [-Werror=class-memaccess]
 1671 |   memcpy(&res, from, sizeof(Packet4c));
      |   ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Core:172,
                 from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Dense:1,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/EigenConfig.hpp:36,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/CosSinDecomposition.hpp:17,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/CosSinDecomposition.cpp:15:
/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/src/Core/GenericPacketMath.h:159:8: note: ‘Eigen::internal::Packet4c’ {aka ‘struct Eigen::internal::eigen_packet_wrapper<int, 2>’} declared here
  159 | struct eigen_packet_wrapper
      |        ^~~~~~~~~~~~~~~~~~~~
In file included from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Core:214,
                 from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Dense:1,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/EigenConfig.hpp:36,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/CosSinDecomposition.hpp:17,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/CosSinDecomposition.cpp:15:
/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h: In function ‘Packet Eigen::internal::ploadu(const typename Eigen::internal::unpacket_traits<T>::type*) [with Packet = Eigen::internal::eigen_packet_wrapper<int, 2>; typename Eigen::internal::unpacket_traits<T>::type = signed char]’:
/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h:1716:9: error: ‘void* memcpy(void*, const void*, size_t)’ copying an object of non-trivial type ‘Eigen::internal::Packet4c’ {aka ‘struct Eigen::internal::eigen_packet_wrapper<int, 2>’} from an array of ‘const int8_t’ {aka ‘const signed char’} [-Werror=class-memaccess]
 1716 |   memcpy(&res, from, sizeof(Packet4c));
      |   ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Core:172,
                 from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Dense:1,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/EigenConfig.hpp:36,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/CosSinDecomposition.hpp:17,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/CosSinDecomposition.cpp:15:
/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/src/Core/GenericPacketMath.h:159:8: note: ‘Eigen::internal::Packet4c’ {aka ‘struct Eigen::internal::eigen_packet_wrapper<int, 2>’} declared here
  159 | struct eigen_packet_wrapper
      |        ^~~~~~~~~~~~~~~~~~~~
cc1plus: all warnings being treated as errors
gmake[2]: *** [Utils/CMakeFiles/tket-Utils.dir/build.make:132: Utils/CMakeFiles/tket-Utils.dir/CosSinDecomposition.cpp.o] Error 1
In file included from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Core:214,
                 from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Dense:1,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/EigenConfig.hpp:36,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/MatrixAnalysis.hpp:20,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/MatrixAnalysis.cpp:15:
/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h: In function ‘Packet Eigen::internal::pload(const typename Eigen::internal::unpacket_traits<T>::type*) [with Packet = Eigen::internal::eigen_packet_wrapper<int, 2>; typename Eigen::internal::unpacket_traits<T>::type = signed char]’:
/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h:1671:9: error: ‘void* memcpy(void*, const void*, size_t)’ copying an object of non-trivial type ‘Eigen::internal::Packet4c’ {aka ‘struct Eigen::internal::eigen_packet_wrapper<int, 2>’} from an array of ‘const int8_t’ {aka ‘const signed char’} [-Werror=class-memaccess]
 1671 |   memcpy(&res, from, sizeof(Packet4c));
      |   ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Core:172,
                 from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Dense:1,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/EigenConfig.hpp:36,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/MatrixAnalysis.hpp:20,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/MatrixAnalysis.cpp:15:
/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/src/Core/GenericPacketMath.h:159:8: note: ‘Eigen::internal::Packet4c’ {aka ‘struct Eigen::internal::eigen_packet_wrapper<int, 2>’} declared here
  159 | struct eigen_packet_wrapper
      |        ^~~~~~~~~~~~~~~~~~~~
In file included from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Core:214,
                 from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Dense:1,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/EigenConfig.hpp:36,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/MatrixAnalysis.hpp:20,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/MatrixAnalysis.cpp:15:
/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h: In function ‘Packet Eigen::internal::ploadu(const typename Eigen::internal::unpacket_traits<T>::type*) [with Packet = Eigen::internal::eigen_packet_wrapper<int, 2>; typename Eigen::internal::unpacket_traits<T>::type = signed char]’:
/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h:1716:9: error: ‘void* memcpy(void*, const void*, size_t)’ copying an object of non-trivial type ‘Eigen::internal::Packet4c’ {aka ‘struct Eigen::internal::eigen_packet_wrapper<int, 2>’} from an array of ‘const int8_t’ {aka ‘const signed char’} [-Werror=class-memaccess]
 1716 |   memcpy(&res, from, sizeof(Packet4c));
      |   ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Core:172,
                 from /home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/Dense:1,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/EigenConfig.hpp:36,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/include/Utils/MatrixAnalysis.hpp:20,
                 from /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567/Utils/MatrixAnalysis.cpp:15:
/home/vscode/.conan/data/eigen/3.4.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/include/eigen3/Eigen/src/Core/GenericPacketMath.h:159:8: note: ‘Eigen::internal::Packet4c’ {aka ‘struct Eigen::internal::eigen_packet_wrapper<int, 2>’} declared here
  159 | struct eigen_packet_wrapper
      |        ^~~~~~~~~~~~~~~~~~~~
cc1plus: all warnings being treated as errors
gmake[2]: *** [Utils/CMakeFiles/tket-Utils.dir/build.make:104: Utils/CMakeFiles/tket-Utils.dir/MatrixAnalysis.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:440: Utils/CMakeFiles/tket-Utils.dir/all] Error 2
gmake: *** [Makefile:91: all] Error 2
tket/1.0.59@tket/stable: 
tket/1.0.59@tket/stable: ERROR: Package 'e623b0505dff0cc18bae19a595ccd8d58f461567' build failed
tket/1.0.59@tket/stable: WARN: Build folder /home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567
ERROR: tket/1.0.59@tket/stable: Error in build() method, line 96
        cmake.build()
        ConanException: Error 2 while executing cmake --build '/home/vscode/.conan/data/tket/1.0.59/tket/stable/build/e623b0505dff0cc18bae19a595ccd8d58f461567' '--' '-j8'

BTW, is there an issue I can follow for updates on the aarch64 wheel release?

robertodr commented 1 year ago

One more data point: the whole process runs smoothly using Clang, as available on Ubuntu 22.04.

$ clang --version
Ubuntu clang version 14.0.0-1ubuntu1
Target: aarch64-unknown-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
cqc-alec commented 1 year ago

BTW, is there an issue I can follow for updates on the aarch64 wheel release?

I don't think so, but the work is done and these wheels will be included in the next release -- probably this week or next.

robertodr commented 1 year ago

That's fantastic to hear! Thank you!

cqc-alec commented 1 year ago

That's fantastic to hear! Thank you!

Hi @robertodr , we've just released pytket 1.14.0 with pre-built Linux/aarm64 wheels. Please give them a try!

robertodr commented 1 year ago

I can confirm that the pre-build wheels install cleanly and work as expected. Thanks for your help!

cqc-alec commented 1 year ago

I can confirm that the pre-build wheels install cleanly and work as expected. Thanks for your help!

Good to hear!