gallantlab / pycortex

Pycortex is a python-based toolkit for surface visualization of fMRI data
https://gallantlab.github.io/pycortex
BSD 2-Clause "Simplified" License
592 stars 138 forks source link

install Pycortex ERROR:Could not build wheels for pycortex, which is required to install pyproject.toml-based projects #494

Closed Chen1997237 closed 1 year ago

Chen1997237 commented 1 year ago

Hello! When I install Pycortex on Ubuntu 18.04 OS with python 3.11.4, I got an error, even after I have upgrading all the requirements as per documentation. I tried to install directly from PyPI and cloning and installing the last version locally. I also tried to install without pip, but ending with the same issue. I see there might be an issue with GCC, are we missing some non-pythonic requirements for this install? and I also have install Pycortex on my MAC (macOS 13.4.1 ), but I got the same error

Here's the full `pip` log for completeness ``` (VM) jupyter@task_3070_chenfeipeng:~/workspace/LanguageModeling/voxelwise_tutorials$ pip install -U pycortex DEPRECATION: Loading egg at /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages/huggingface_hub-0.16.4-py3.8.egg is deprecated. pip 23.3 will enforce this behaviour change. A possible replacement is to use pip for package installation.. DEPRECATION: Loading egg at /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages/sacremoses-0.0.43-py3.8.egg is deprecated. pip 23.3 will enforce this behaviour change. A possible replacement is to use pip for package installation.. Looking in indexes: https://mirrors.bfsu.edu.cn/pypi/web/simple Collecting pycortex Using cached https://mirrors.bfsu.edu.cn/pypi/web/packages/fa/1f/ae15051fd5c7dfd54b2796996e8332b23513d2eab46d9def95f44a45022a/pycortex-1.2.7.tar.gz (37.2 MB) Installing build dependencies ... done Getting requirements to build wheel ... done Preparing metadata (pyproject.toml) ... done Collecting future (from pycortex) Using cached future-0.18.3-py3-none-any.whl Requirement already satisfied: numpy in /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages (from pycortex) (1.25.2) Requirement already satisfied: scipy in /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages (from pycortex) (1.11.1) Requirement already satisfied: tornado>=4.3 in /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages (from pycortex) (6.3.2) Collecting shapely (from pycortex) Using cached https://mirrors.bfsu.edu.cn/pypi/web/packages/04/67/05e96af1c4ee130e12ac228da1ab86f7581809d8f008aa3a9ec19ea22eb2/shapely-2.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB) Requirement already satisfied: lxml in /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages (from pycortex) (4.9.3) Collecting html5lib (from pycortex) Using cached https://mirrors.bfsu.edu.cn/pypi/web/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl (112 kB) Collecting h5py (from pycortex) Using cached https://mirrors.bfsu.edu.cn/pypi/web/packages/a7/d9/ac660616671e30d70c091e46ed4fdc50df48ca79b1ac99df5499a45de128/h5py-3.9.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.8 MB) Collecting numexpr (from pycortex) Using cached https://mirrors.bfsu.edu.cn/pypi/web/packages/f4/fd/dcc3664f5e0c8f4ffbcf20a3e8db6ecb265b409c0fddd77baa0009fa4fec/numexpr-2.8.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (385 kB) Collecting cython<3.0 (from pycortex) Using cached https://mirrors.bfsu.edu.cn/pypi/web/packages/43/c9/4c8a84731c0948b408d059c2c17c95cbb8b9c2baefe1c6985c0b29a9055e/Cython-0.29.36-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl (1.9 MB) Requirement already satisfied: matplotlib in /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages (from pycortex) (3.7.2) Requirement already satisfied: pillow in /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages (from pycortex) (10.0.0) Requirement already satisfied: nibabel>=2.1 in /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages (from pycortex) (5.1.0) Requirement already satisfied: networkx>=2.1 in /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages (from pycortex) (3.1) Collecting imageio (from pycortex) Using cached https://mirrors.bfsu.edu.cn/pypi/web/packages/c7/b0/7b6c35b8636ed773325cdb6f5ac3cd36afba63d99e20ed59c521cf5018b4/imageio-2.31.1-py3-none-any.whl (313 kB) Collecting wget (from pycortex) Using cached wget-3.2-py3-none-any.whl Requirement already satisfied: packaging>=17 in /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages (from nibabel>=2.1->pycortex) (23.1) Requirement already satisfied: six>=1.9 in /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages (from html5lib->pycortex) (1.16.0) Requirement already satisfied: webencodings in /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages (from html5lib->pycortex) (0.5.1) Requirement already satisfied: contourpy>=1.0.1 in /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages (from matplotlib->pycortex) (1.1.0) Requirement already satisfied: cycler>=0.10 in /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages (from matplotlib->pycortex) (0.11.0) Requirement already satisfied: fonttools>=4.22.0 in /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages (from matplotlib->pycortex) (4.42.0) Requirement already satisfied: kiwisolver>=1.0.1 in /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages (from matplotlib->pycortex) (1.4.4) Requirement already satisfied: pyparsing<3.1,>=2.3.1 in /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages (from matplotlib->pycortex) (3.0.9) Requirement already satisfied: python-dateutil>=2.7 in /home/jupyter/miniforge3/envs/VM/lib/python3.11/site-packages (from matplotlib->pycortex) (2.8.2) Building wheels for collected packages: pycortex Building wheel for pycortex (pyproject.toml) ... error error: subprocess-exited-with-error × Building wheel for pycortex (pyproject.toml) did not run successfully. │ exit code: 1 ╰─> [585 lines of output] :5: DeprecationWarning: `numpy.distutils` is deprecated since NumPy 1.23.0, as a result of the deprecation of `distutils` itself. It will be removed for Python >= 3.12. For older Python versions it will remain present. It is recommended to use `setuptools < 60.0` for those Python versions. For more details, see: https://numpy.org/devdocs/reference/distutils_status_migration.html running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-cpython-311 creating build/lib.linux-x86_64-cpython-311/cortex copying cortex/__init__.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/align.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/anat.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/appdirs.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/brainctm.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/database.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/fmriprep.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/formats_old.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/freesurfer.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/mayavi_aligner.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/mni.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/mp.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/options.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/rois.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/segment.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/surfinfo.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/svgoverlay.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/testing_utils.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/utils.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/version.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/volume.py -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/xfm.py -> build/lib.linux-x86_64-cpython-311/cortex creating build/lib.linux-x86_64-cpython-311/cortex/webgl copying cortex/webgl/FallbackLoader.py -> build/lib.linux-x86_64-cpython-311/cortex/webgl copying cortex/webgl/__init__.py -> build/lib.linux-x86_64-cpython-311/cortex/webgl copying cortex/webgl/data.py -> build/lib.linux-x86_64-cpython-311/cortex/webgl copying cortex/webgl/htmlembed.py -> build/lib.linux-x86_64-cpython-311/cortex/webgl copying cortex/webgl/serve.py -> build/lib.linux-x86_64-cpython-311/cortex/webgl copying cortex/webgl/view.py -> build/lib.linux-x86_64-cpython-311/cortex/webgl creating build/lib.linux-x86_64-cpython-311/cortex/mapper copying cortex/mapper/__init__.py -> build/lib.linux-x86_64-cpython-311/cortex/mapper copying cortex/mapper/line.py -> build/lib.linux-x86_64-cpython-311/cortex/mapper copying cortex/mapper/mapper.py -> build/lib.linux-x86_64-cpython-311/cortex/mapper copying cortex/mapper/patch.py -> build/lib.linux-x86_64-cpython-311/cortex/mapper copying cortex/mapper/point.py -> build/lib.linux-x86_64-cpython-311/cortex/mapper copying cortex/mapper/samplers.py -> build/lib.linux-x86_64-cpython-311/cortex/mapper copying cortex/mapper/volume.py -> build/lib.linux-x86_64-cpython-311/cortex/mapper creating build/lib.linux-x86_64-cpython-311/cortex/dataset copying cortex/dataset/__init__.py -> build/lib.linux-x86_64-cpython-311/cortex/dataset copying cortex/dataset/braindata.py -> build/lib.linux-x86_64-cpython-311/cortex/dataset copying cortex/dataset/dataset.py -> build/lib.linux-x86_64-cpython-311/cortex/dataset copying cortex/dataset/view2D.py -> build/lib.linux-x86_64-cpython-311/cortex/dataset copying cortex/dataset/viewRGB.py -> build/lib.linux-x86_64-cpython-311/cortex/dataset copying cortex/dataset/views.py -> build/lib.linux-x86_64-cpython-311/cortex/dataset creating build/lib.linux-x86_64-cpython-311/cortex/blender copying cortex/blender/__init__.py -> build/lib.linux-x86_64-cpython-311/cortex/blender copying cortex/blender/blendlib.py -> build/lib.linux-x86_64-cpython-311/cortex/blender creating build/lib.linux-x86_64-cpython-311/cortex/tests copying cortex/tests/__init__.py -> build/lib.linux-x86_64-cpython-311/cortex/tests copying cortex/tests/test_dataset.py -> build/lib.linux-x86_64-cpython-311/cortex/tests copying cortex/tests/test_formats.py -> build/lib.linux-x86_64-cpython-311/cortex/tests copying cortex/tests/test_freesurfer.py -> build/lib.linux-x86_64-cpython-311/cortex/tests copying cortex/tests/test_polyutils.py -> build/lib.linux-x86_64-cpython-311/cortex/tests copying cortex/tests/test_quickflat.py -> build/lib.linux-x86_64-cpython-311/cortex/tests copying cortex/tests/test_utils.py -> build/lib.linux-x86_64-cpython-311/cortex/tests creating build/lib.linux-x86_64-cpython-311/cortex/quickflat copying cortex/quickflat/__init__.py -> build/lib.linux-x86_64-cpython-311/cortex/quickflat copying cortex/quickflat/composite.py -> build/lib.linux-x86_64-cpython-311/cortex/quickflat copying cortex/quickflat/utils.py -> build/lib.linux-x86_64-cpython-311/cortex/quickflat copying cortex/quickflat/view.py -> build/lib.linux-x86_64-cpython-311/cortex/quickflat creating build/lib.linux-x86_64-cpython-311/cortex/polyutils copying cortex/polyutils/__init__.py -> build/lib.linux-x86_64-cpython-311/cortex/polyutils copying cortex/polyutils/distortion.py -> build/lib.linux-x86_64-cpython-311/cortex/polyutils copying cortex/polyutils/exact_geodesic.py -> build/lib.linux-x86_64-cpython-311/cortex/polyutils copying cortex/polyutils/misc.py -> build/lib.linux-x86_64-cpython-311/cortex/polyutils copying cortex/polyutils/subsurface.py -> build/lib.linux-x86_64-cpython-311/cortex/polyutils copying cortex/polyutils/surface.py -> build/lib.linux-x86_64-cpython-311/cortex/polyutils creating build/lib.linux-x86_64-cpython-311/cortex/export copying cortex/export/__init__.py -> build/lib.linux-x86_64-cpython-311/cortex/export copying cortex/export/_default_params.py -> build/lib.linux-x86_64-cpython-311/cortex/export copying cortex/export/panels.py -> build/lib.linux-x86_64-cpython-311/cortex/export copying cortex/export/save_views.py -> build/lib.linux-x86_64-cpython-311/cortex/export running egg_info writing pycortex.egg-info/PKG-INFO writing dependency_links to pycortex.egg-info/dependency_links.txt writing requirements to pycortex.egg-info/requires.txt writing top-level names to pycortex.egg-info/top_level.txt reading manifest file 'pycortex.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' adding license file 'LICENSE' writing manifest file 'pycortex.egg-info/SOURCES.txt' /tmp/pip-build-env-lf3zi1mm/overlay/lib/python3.11/site-packages/setuptools/command/build_py.py:201: _Warning: Package 'cortex.webgl.resources.css' is absent from the `packages` configuration. !! ******************************************************************************** ############################ # Package would be ignored # ############################ Python recognizes 'cortex.webgl.resources.css' as an importable package[^1], but it is absent from setuptools' `packages` configuration. This leads to an ambiguous overall configuration. If you want to distribute this package, please make sure that 'cortex.webgl.resources.css' is explicitly added to the `packages` configuration field. Alternatively, you can also rely on setuptools' discovery methods (for example by using `find_namespace_packages(...)`/`find_namespace:` instead of `find_packages(...)`/`find:`). You can read more about "package discovery" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html If you don't want 'cortex.webgl.resources.css' to be distributed and are already explicitly excluding 'cortex.webgl.resources.css' via `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`, you can try to use `exclude_package_data`, or `include-package-data=False` in combination with a more fine grained `package-data` configuration. You can read more about "package data files" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/datafiles.html [^1]: For Python, any directory (with suitable naming) can be imported, even if it does not contain any `.py` files. On the other hand, currently there is no concept of package data directory, all directories are treated like packages. ******************************************************************************** !! check.warn(importable) /tmp/pip-build-env-lf3zi1mm/overlay/lib/python3.11/site-packages/setuptools/command/build_py.py:201: _Warning: Package 'cortex.webgl.resources.css.images' is absent from the `packages` configuration. !! ******************************************************************************** ############################ # Package would be ignored # ############################ Python recognizes 'cortex.webgl.resources.css.images' as an importable package[^1], but it is absent from setuptools' `packages` configuration. This leads to an ambiguous overall configuration. If you want to distribute this package, please make sure that 'cortex.webgl.resources.css.images' is explicitly added to the `packages` configuration field. Alternatively, you can also rely on setuptools' discovery methods (for example by using `find_namespace_packages(...)`/`find_namespace:` instead of `find_packages(...)`/`find:`). You can read more about "package discovery" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html If you don't want 'cortex.webgl.resources.css.images' to be distributed and are already explicitly excluding 'cortex.webgl.resources.css.images' via `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`, you can try to use `exclude_package_data`, or `include-package-data=False` in combination with a more fine grained `package-data` configuration. You can read more about "package data files" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/datafiles.html [^1]: For Python, any directory (with suitable naming) can be imported, even if it does not contain any `.py` files. On the other hand, currently there is no concept of package data directory, all directories are treated like packages. ******************************************************************************** !! check.warn(importable) /tmp/pip-build-env-lf3zi1mm/overlay/lib/python3.11/site-packages/setuptools/command/build_py.py:201: _Warning: Package 'cortex.webgl.resources.explo_demo' is absent from the `packages` configuration. !! ******************************************************************************** ############################ # Package would be ignored # ############################ Python recognizes 'cortex.webgl.resources.explo_demo' as an importable package[^1], but it is absent from setuptools' `packages` configuration. This leads to an ambiguous overall configuration. If you want to distribute this package, please make sure that 'cortex.webgl.resources.explo_demo' is explicitly added to the `packages` configuration field. Alternatively, you can also rely on setuptools' discovery methods (for example by using `find_namespace_packages(...)`/`find_namespace:` instead of `find_packages(...)`/`find:`). You can read more about "package discovery" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html If you don't want 'cortex.webgl.resources.explo_demo' to be distributed and are already explicitly excluding 'cortex.webgl.resources.explo_demo' via `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`, you can try to use `exclude_package_data`, or `include-package-data=False` in combination with a more fine grained `package-data` configuration. You can read more about "package data files" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/datafiles.html [^1]: For Python, any directory (with suitable naming) can be imported, even if it does not contain any `.py` files. On the other hand, currently there is no concept of package data directory, all directories are treated like packages. ******************************************************************************** !! check.warn(importable) /tmp/pip-build-env-lf3zi1mm/overlay/lib/python3.11/site-packages/setuptools/command/build_py.py:201: _Warning: Package 'cortex.webgl.resources.js' is absent from the `packages` configuration. !! ******************************************************************************** ############################ # Package would be ignored # ############################ Python recognizes 'cortex.webgl.resources.js' as an importable package[^1], but it is absent from setuptools' `packages` configuration. This leads to an ambiguous overall configuration. If you want to distribute this package, please make sure that 'cortex.webgl.resources.js' is explicitly added to the `packages` configuration field. Alternatively, you can also rely on setuptools' discovery methods (for example by using `find_namespace_packages(...)`/`find_namespace:` instead of `find_packages(...)`/`find:`). You can read more about "package discovery" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html If you don't want 'cortex.webgl.resources.js' to be distributed and are already explicitly excluding 'cortex.webgl.resources.js' via `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`, you can try to use `exclude_package_data`, or `include-package-data=False` in combination with a more fine grained `package-data` configuration. You can read more about "package data files" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/datafiles.html [^1]: For Python, any directory (with suitable naming) can be imported, even if it does not contain any `.py` files. On the other hand, currently there is no concept of package data directory, all directories are treated like packages. ******************************************************************************** !! check.warn(importable) /tmp/pip-build-env-lf3zi1mm/overlay/lib/python3.11/site-packages/setuptools/command/build_py.py:201: _Warning: Package 'cortex.webgl.resources.js.ctm' is absent from the `packages` configuration. !! ******************************************************************************** ############################ # Package would be ignored # ############################ Python recognizes 'cortex.webgl.resources.js.ctm' as an importable package[^1], but it is absent from setuptools' `packages` configuration. This leads to an ambiguous overall configuration. If you want to distribute this package, please make sure that 'cortex.webgl.resources.js.ctm' is explicitly added to the `packages` configuration field. Alternatively, you can also rely on setuptools' discovery methods (for example by using `find_namespace_packages(...)`/`find_namespace:` instead of `find_packages(...)`/`find:`). You can read more about "package discovery" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html If you don't want 'cortex.webgl.resources.js.ctm' to be distributed and are already explicitly excluding 'cortex.webgl.resources.js.ctm' via `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`, you can try to use `exclude_package_data`, or `include-package-data=False` in combination with a more fine grained `package-data` configuration. You can read more about "package data files" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/datafiles.html [^1]: For Python, any directory (with suitable naming) can be imported, even if it does not contain any `.py` files. On the other hand, currently there is no concept of package data directory, all directories are treated like packages. ******************************************************************************** !! check.warn(importable) /tmp/pip-build-env-lf3zi1mm/overlay/lib/python3.11/site-packages/setuptools/command/build_py.py:201: _Warning: Package 'cortex.webgl.resources.js.ctm.license' is absent from the `packages` configuration. !! ******************************************************************************** ############################ # Package would be ignored # ############################ Python recognizes 'cortex.webgl.resources.js.ctm.license' as an importable package[^1], but it is absent from setuptools' `packages` configuration. This leads to an ambiguous overall configuration. If you want to distribute this package, please make sure that 'cortex.webgl.resources.js.ctm.license' is explicitly added to the `packages` configuration field. Alternatively, you can also rely on setuptools' discovery methods (for example by using `find_namespace_packages(...)`/`find_namespace:` instead of `find_packages(...)`/`find:`). You can read more about "package discovery" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html If you don't want 'cortex.webgl.resources.js.ctm.license' to be distributed and are already explicitly excluding 'cortex.webgl.resources.js.ctm.license' via `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`, you can try to use `exclude_package_data`, or `include-package-data=False` in combination with a more fine grained `package-data` configuration. You can read more about "package data files" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/datafiles.html [^1]: For Python, any directory (with suitable naming) can be imported, even if it does not contain any `.py` files. On the other hand, currently there is no concept of package data directory, all directories are treated like packages. ******************************************************************************** !! check.warn(importable) /tmp/pip-build-env-lf3zi1mm/overlay/lib/python3.11/site-packages/setuptools/command/build_py.py:201: _Warning: Package 'cortex.webgl.resources.json' is absent from the `packages` configuration. !! ******************************************************************************** ############################ # Package would be ignored # ############################ Python recognizes 'cortex.webgl.resources.json' as an importable package[^1], but it is absent from setuptools' `packages` configuration. This leads to an ambiguous overall configuration. If you want to distribute this package, please make sure that 'cortex.webgl.resources.json' is explicitly added to the `packages` configuration field. Alternatively, you can also rely on setuptools' discovery methods (for example by using `find_namespace_packages(...)`/`find_namespace:` instead of `find_packages(...)`/`find:`). You can read more about "package discovery" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html If you don't want 'cortex.webgl.resources.json' to be distributed and are already explicitly excluding 'cortex.webgl.resources.json' via `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`, you can try to use `exclude_package_data`, or `include-package-data=False` in combination with a more fine grained `package-data` configuration. You can read more about "package data files" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/datafiles.html [^1]: For Python, any directory (with suitable naming) can be imported, even if it does not contain any `.py` files. On the other hand, currently there is no concept of package data directory, all directories are treated like packages. ******************************************************************************** !! check.warn(importable) copying cortex/bbr.sch -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/defaults.cfg -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/formats.c -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/formats.pyx -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/openctm.c -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/openctm.pxd -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/openctm.pyx -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/svgbase.xml -> build/lib.linux-x86_64-cpython-311/cortex copying cortex/webgl/demo.html -> build/lib.linux-x86_64-cpython-311/cortex/webgl copying cortex/webgl/explo_demo.html -> build/lib.linux-x86_64-cpython-311/cortex/webgl copying cortex/webgl/favicon.ico -> build/lib.linux-x86_64-cpython-311/cortex/webgl copying cortex/webgl/mixer.html -> build/lib.linux-x86_64-cpython-311/cortex/webgl copying cortex/webgl/public.html -> build/lib.linux-x86_64-cpython-311/cortex/webgl copying cortex/webgl/simple.html -> build/lib.linux-x86_64-cpython-311/cortex/webgl copying cortex/webgl/static.html -> build/lib.linux-x86_64-cpython-311/cortex/webgl copying cortex/webgl/template.html -> build/lib.linux-x86_64-cpython-311/cortex/webgl copying cortex/webgl/wngraph-labeled.svg -> build/lib.linux-x86_64-cpython-311/cortex/webgl copying cortex/webgl/wngraph-minimal.html -> build/lib.linux-x86_64-cpython-311/cortex/webgl copying cortex/webgl/wngraph.html -> build/lib.linux-x86_64-cpython-311/cortex/webgl copying cortex/webgl/wngraph.svg -> build/lib.linux-x86_64-cpython-311/cortex/webgl creating build/lib.linux-x86_64-cpython-311/cortex/webgl/resources creating build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css copying cortex/webgl/resources/css/demo.css -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css copying cortex/webgl/resources/css/jquery-ui.min.css -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css copying cortex/webgl/resources/css/jquery.miniColors.css -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css copying cortex/webgl/resources/css/jsplot.css -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css copying cortex/webgl/resources/css/mriview.css -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css copying cortex/webgl/resources/css/select2-4.0.3.min.css -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css copying cortex/webgl/resources/css/w2ui-1.2.min.css -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css copying cortex/webgl/resources/css/w2ui-1.4.2.css -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css copying cortex/webgl/resources/css/w2ui-1.4.2.min.css -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css creating build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/colors.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/control-pause.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/control-play.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/loading.gif -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/magnifying_glass.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/trigger.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/ui-bg_diagonals-thick_18_b81900_40x40.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/ui-bg_diagonals-thick_20_666666_40x40.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/ui-bg_flat_10_000000_40x100.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/ui-bg_glass_100_f6f6f6_1x400.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/ui-bg_glass_100_fdf5ce_1x400.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/ui-bg_glass_65_ffffff_1x400.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/ui-bg_gloss-wave_35_f6a828_500x100.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/ui-bg_highlight-soft_100_eeeeee_1x100.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/ui-bg_highlight-soft_75_ffe45c_1x100.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/ui-icons_222222_256x240.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/ui-icons_228ef1_256x240.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/ui-icons_ef8c08_256x240.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/ui-icons_ffd27a_256x240.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images copying cortex/webgl/resources/css/images/ui-icons_ffffff_256x240.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/css/images creating build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/explo_demo copying cortex/webgl/resources/explo_demo/cursor.png -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/explo_demo copying cortex/webgl/resources/explo_demo/demo.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/explo_demo copying cortex/webgl/resources/explo_demo/flatten_1.svg -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/explo_demo copying cortex/webgl/resources/explo_demo/flatten_2.svg -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/explo_demo copying cortex/webgl/resources/explo_demo/intro.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/explo_demo copying cortex/webgl/resources/explo_demo/intro.svg -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/explo_demo copying cortex/webgl/resources/explo_demo/rotate_1.svg -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/explo_demo copying cortex/webgl/resources/explo_demo/rotate_2.svg -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/explo_demo copying cortex/webgl/resources/explo_demo/swipe_left.svg -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/explo_demo copying cortex/webgl/resources/explo_demo/swipe_right.svg -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/explo_demo copying cortex/webgl/resources/explo_demo/zoom_1.svg -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/explo_demo copying cortex/webgl/resources/explo_demo/zoom_2.svg -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/explo_demo creating build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/LandscapeControls.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/OculusRiftEffect.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/axes3d.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/canvg.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/dat.gui.min.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/datamodel.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/dataset.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/facepick.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/facepick_worker.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/figure.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/graphview.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/hoverintent.min.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/jgestures.min.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/jquery-2.1.1.min.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/jquery-ui.min.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/jquery.ddslick.min.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/jquery.miniColors.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/jquery.svg.min.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/jquery.svganim.min.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/jquery.ui.touch-punch.min.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/kdTree-min.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/leap-0.6.4.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/leap.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/menu.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/movement.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/mriview.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/mriview_surface.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/mriview_utils.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/python_interface.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/rgbcolor.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/select2-4.0.3.min.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/shaderlib.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/shadowtex.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/sliceplane.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/surfgeometry.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/surfload.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/svg_todataurl.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/svgoverlay.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/three.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/w2ui-1.2.min.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/w2ui-1.4.2.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js copying cortex/webgl/resources/js/w2ui-1.4.2.min.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js creating build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js/ctm copying cortex/webgl/resources/js/ctm/CTMLoader.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js/ctm copying cortex/webgl/resources/js/ctm/CTMWorker.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js/ctm copying cortex/webgl/resources/js/ctm/ctm.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js/ctm copying cortex/webgl/resources/js/ctm/lzma.js -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js/ctm creating build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js/ctm/license copying cortex/webgl/resources/js/ctm/license/OpenCTM.txt -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js/ctm/license copying cortex/webgl/resources/js/ctm/license/js-lzma.txt -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js/ctm/license copying cortex/webgl/resources/js/ctm/license/js-openctm.txt -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/js/ctm/license creating build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/json copying cortex/webgl/resources/json/wngraph-definitions.json -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/json copying cortex/webgl/resources/json/wngraph-nodenames.json -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/json copying cortex/webgl/resources/json/wngraph-rgbcolors.json -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/json copying cortex/webgl/resources/json/wngraph-testvoxwts.json -> build/lib.linux-x86_64-cpython-311/cortex/webgl/resources/json running build_ext building 'cortex.openctm' extension Warning: Can't read registry to find the necessary compiler setting Make sure that Python modules winreg, win32api or win32con are installed. INFO: C compiler: gcc -pthread -B /home/jupyter/miniforge3/envs/VM/compiler_compat -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/jupyter/miniforge3/envs/VM/include -fPIC -O2 -isystem /home/jupyter/miniforge3/envs/VM/include -fPIC creating build/temp.linux-x86_64-cpython-311 creating build/temp.linux-x86_64-cpython-311/OpenCTM-1.0.3 creating build/temp.linux-x86_64-cpython-311/OpenCTM-1.0.3/lib creating build/temp.linux-x86_64-cpython-311/OpenCTM-1.0.3/lib/liblzma creating build/temp.linux-x86_64-cpython-311/cortex INFO: compile options: '-DLZMA_PREFIX_CTM -DOPENCTM_BUILD -IOpenCTM-1.0.3/lib/ -IOpenCTM-1.0.3/lib/liblzma/ -I/tmp/pip-build-env-lf3zi1mm/overlay/lib/python3.11/site-packages/numpy/core/include -I/home/jupyter/miniforge3/envs/VM/include/python3.11 -c' INFO: gcc: OpenCTM-1.0.3/lib/compressMG1.c INFO: gcc: OpenCTM-1.0.3/lib/compressMG2.c INFO: gcc: OpenCTM-1.0.3/lib/compressRAW.c INFO: gcc: OpenCTM-1.0.3/lib/liblzma/Alloc.c INFO: gcc: OpenCTM-1.0.3/lib/liblzma/LzFind.c [Errno 2] No such file or directory: 'gcc' INFO: gcc: OpenCTM-1.0.3/lib/liblzma/LzmaDec.c INFO: gcc: OpenCTM-1.0.3/lib/liblzma/LzmaEnc.c [Errno 2] No such file or directory: 'gcc' INFO: gcc: OpenCTM-1.0.3/lib/openctm.c [Errno 2] No such file or directory: 'gcc' [Errno 2] No such file or directory: 'gcc' INFO: gcc: OpenCTM-1.0.3/lib/liblzma/LzmaLib.c INFO: gcc: OpenCTM-1.0.3/lib/stream.c INFO: gcc: cortex/openctm.c [Errno 2] No such file or directory: 'gcc' [Errno 2] No such file or directory: 'gcc' [Errno 2] No such file or directory: 'gcc' [Errno 2] No such file or directory: 'gcc' [Errno 2] No such file or directory: 'gcc' [Errno 2] No such file or directory: 'gcc' [Errno 2] No such file or directory: 'gcc' error: Command "gcc -pthread -B /home/jupyter/miniforge3/envs/VM/compiler_compat -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/jupyter/miniforge3/envs/VM/include -fPIC -O2 -isystem /home/jupyter/miniforge3/envs/VM/include -fPIC -DLZMA_PREFIX_CTM -DOPENCTM_BUILD -IOpenCTM-1.0.3/lib/ -IOpenCTM-1.0.3/lib/liblzma/ -I/tmp/pip-build-env-lf3zi1mm/overlay/lib/python3.11/site-packages/numpy/core/include -I/home/jupyter/miniforge3/envs/VM/include/python3.11 -c OpenCTM-1.0.3/lib/compressMG1.c -o build/temp.linux-x86_64-cpython-311/OpenCTM-1.0.3/lib/compressMG1.o" failed with exit status 127 [end of output] note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for pycortex Failed to build pycortex ERROR: Could not build wheels for pycortex, which is required to install pyproject.toml-based projects
mvdoc commented 1 year ago

Hi, it looks like you don't have gcc installed. That compiler is needed for installing some of pycortex cythonized code.

Chen1997237 commented 1 year ago

thanks for the quick reply! and I have successfully solved this problem after I installed gcc!

Chen1997237 commented 1 year ago

and here is my solution:

install gcc ``` first, sudo apt update and then, sudo apt install build-essential finally check if the gcc has installed sucessfully, gcc --version gcc (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0 Copyright (C) 2019 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. and after this you can install pycortex