Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot install on Mac M1 #248

Closed
bravma opened this issue Aug 18, 2023 · 1 comment
Closed

Cannot install on Mac M1 #248

bravma opened this issue Aug 18, 2023 · 1 comment

Comments

@bravma
Copy link

bravma commented Aug 18, 2023

I have troubles installing openTSNE on my Mac M1 using docker. I run the following code:

docker run -it python:3.9.10 pip3 install opentsne

which results in the following error:

#0 17.11   × Building wheel for openTSNE (pyproject.toml) did not run successfully.
#0 17.11   │ exit code: 1
#0 17.11   ╰─> [103 lines of output]
#0 17.11       FFTW3 header files found. Using FFTW implementation of FFT.
#0 17.11       running bdist_wheel
#0 17.11       running build
#0 17.11       running build_py
#0 17.11       creating build
#0 17.11       creating build/lib.linux-aarch64-cpython-39
#0 17.11       creating build/lib.linux-aarch64-cpython-39/openTSNE
#0 17.11       copying openTSNE/version.py -> build/lib.linux-aarch64-cpython-39/openTSNE
#0 17.11       copying openTSNE/sklearn.py -> build/lib.linux-aarch64-cpython-39/openTSNE
#0 17.11       copying openTSNE/initialization.py -> build/lib.linux-aarch64-cpython-39/openTSNE
#0 17.11       copying openTSNE/metrics.py -> build/lib.linux-aarch64-cpython-39/openTSNE
#0 17.11       copying openTSNE/callbacks.py -> build/lib.linux-aarch64-cpython-39/openTSNE
#0 17.11       copying openTSNE/tsne.py -> build/lib.linux-aarch64-cpython-39/openTSNE
#0 17.11       copying openTSNE/__init__.py -> build/lib.linux-aarch64-cpython-39/openTSNE
#0 17.11       copying openTSNE/utils.py -> build/lib.linux-aarch64-cpython-39/openTSNE
#0 17.11       copying openTSNE/affinity.py -> build/lib.linux-aarch64-cpython-39/openTSNE
#0 17.11       copying openTSNE/nearest_neighbors.py -> build/lib.linux-aarch64-cpython-39/openTSNE
#0 17.11       creating build/lib.linux-aarch64-cpython-39/openTSNE/dependencies
#0 17.11       copying openTSNE/dependencies/__init__.py -> build/lib.linux-aarch64-cpython-39/openTSNE/dependencies
#0 17.11       creating build/lib.linux-aarch64-cpython-39/openTSNE/_matrix_mul
#0 17.11       copying openTSNE/_matrix_mul/__init__.py -> build/lib.linux-aarch64-cpython-39/openTSNE/_matrix_mul
#0 17.11       creating build/lib.linux-aarch64-cpython-39/openTSNE/dependencies/annoy
#0 17.11       copying openTSNE/dependencies/annoy/__init__.py -> build/lib.linux-aarch64-cpython-39/openTSNE/dependencies/annoy
#0 17.11       running build_ext
#0 17.11       gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -I/usr/local/include -I/usr/local/Library/include -c ./tmpzzs8kfpq/omp.c -o ./tmpzzs8kfpq/omp.o
#0 17.11       Found openmp. Compiling with openmp flags...
#0 17.11       Traceback (most recent call last):
#0 17.11         File "/usr/local/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
#0 17.11           main()
#0 17.11         File "/usr/local/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
#0 17.11           json_out['return_val'] = hook(**hook_input['kwargs'])
#0 17.11         File "/usr/local/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 251, in build_wheel
#0 17.11           return _build_backend().build_wheel(wheel_directory, config_settings,
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 434, in build_wheel
#0 17.11           return self._build_with_temp_dir(
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 419, in _build_with_temp_dir
#0 17.11           self.run_setup()
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 341, in run_setup
#0 17.11           exec(code, locals())
#0 17.11         File "<string>", line 268, in <module>
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/__init__.py", line 107, in setup
#0 17.11           return distutils.core.setup(**attrs)
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/_distutils/core.py", line 185, in setup
#0 17.11           return run_commands(dist)
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
#0 17.11           dist.run_commands()
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
#0 17.11           self.run_command(cmd)
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/dist.py", line 1233, in run_command
#0 17.11           super().run_command(command)
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
#0 17.11           cmd_obj.run()
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/wheel/bdist_wheel.py", line 349, in run
#0 17.11           self.run_command("build")
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
#0 17.11           self.distribution.run_command(command)
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/dist.py", line 1233, in run_command
#0 17.11           super().run_command(command)
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
#0 17.11           cmd_obj.run()
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/_distutils/command/build.py", line 131, in run
#0 17.11           self.run_command(cmd_name)
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
#0 17.11           self.distribution.run_command(command)
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/dist.py", line 1233, in run_command
#0 17.11           super().run_command(command)
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
#0 17.11           cmd_obj.run()
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/_distutils/command/build_ext.py", line 345, in run
#0 17.11           self.build_extensions()
#0 17.11         File "<string>", line 211, in build_extensions
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/_distutils/command/build_ext.py", line 467, in build_extensions
#0 17.11           self._build_extensions_serial()
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/setuptools/_distutils/command/build_ext.py", line 493, in _build_extensions_serial
#0 17.11           self.build_extension(ext)
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/Cython/Distutils/build_ext.py", line 122, in build_extension
#0 17.11           new_ext = cythonize(
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/Cython/Build/Dependencies.py", line 990, in cythonize
#0 17.11           module_list, module_metadata = create_extension_list(
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/Cython/Build/Dependencies.py", line 839, in create_extension_list
#0 17.11           kwds = deps.distutils_info(file, aliases, base).values
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/Cython/Build/Dependencies.py", line 691, in distutils_info
#0 17.11           return (self.transitive_merge(filename, self.distutils_info0, DistutilsInfo.merge)
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/Cython/Build/Dependencies.py", line 700, in transitive_merge
#0 17.11           return self.transitive_merge_helper(
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/Cython/Build/Dependencies.py", line 712, in transitive_merge_helper
#0 17.11           for next in outgoing(node):
#0 17.11         File "Cython/Utils.py", line 129, in Cython.Utils.cached_method.wrapper
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/Cython/Build/Dependencies.py", line 613, in cimported_files
#0 17.11           pxd_file = self.find_pxd(module, filename)
#0 17.11         File "Cython/Utils.py", line 129, in Cython.Utils.cached_method.wrapper
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/Cython/Build/Dependencies.py", line 594, in find_pxd
#0 17.11           pxd = self.context.find_pxd_file(relative, source_file_path=filename)
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/Cython/Compiler/Main.py", line 281, in find_pxd_file
#0 17.11           pxd = self.search_include_directories(
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/Cython/Compiler/Main.py", line 309, in search_include_directories
#0 17.11           return search_include_directories(
#0 17.11         File "Cython/Utils.py", line 90, in Cython.Utils.cached_function.wrapper
#0 17.11         File "/tmp/pip-build-env-vclcfgb9/overlay/lib/python3.9/site-packages/Cython/Compiler/Main.py", line 702, in search_include_directories
#0 17.11           path = os.path.join(dirname, dotted_filename)
#0 17.11         File "/usr/local/lib/python3.9/posixpath.py", line 76, in join
#0 17.11           a = os.fspath(a)
#0 17.11       TypeError: expected str, bytes or os.PathLike object, not get_numpy_include
#0 17.11       [end of output]
#0 17.11   
#0 17.11   note: This error originates from a subprocess, and is likely not a problem with pip.
#0 17.11   ERROR: Failed building wheel for openTSNE
#0 17.11 Failed to build openTSNE
#0 17.11 ERROR: Could not build wheels for openTSNE, which is required to install pyproject.toml-based projects
```

Has anyone else encountered this error?

@pavlin-policar
Copy link
Owner

Yeah, we were running into a similar issue in #246 with failing tests. This issue should be fixed in the latest master with #249.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants