-
Notifications
You must be signed in to change notification settings - Fork 34
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
Installation of tmap - macOS Monterey Apple M1 Chip #33
Comments
I have a branch building it on m1 via pip. README.md explains how to install. You will need to install |
This worked, thank you |
If you look at the actions on the latest |
Unfortunately, I could not manage to install tmap on my machine. I tried to install tmap into my miniforge3 environment. I did all steps as you recommended: I installed libomp using brew, then ran next command python3 -m pip install "git+https://git@github.com/doublethefish/tmap.git@development" and I got next mistake. note: This error originates from a subprocess, and is likely not a problem with pip. Who has a successful experience installing tmap on the m1 chip, could you share how you did it? |
@meddwl was that your full log output? |
(tmap) meddwl@meddwl ~ % python3 -m pip install "git+https://git@github.com/doublethefish/tmap.git@development" × Building wheel for tmap-viz (pyproject.toml) did not run successfully.
note: This error originates from a subprocess, and is likely not a problem with pip. |
Here’s the answer to your problem from your log:
“”” RuntimeError: CMake must be installed to build the following
extensions: _tmap””””
…On Tue, 20 Dec 2022 at 09:16, Alina ***@***.***> wrote:
@meddwl <https://github.com/meddwl> was that your full log output?
(tmap) ***@***.*** ~ % python3 -m pip install "git+
***@***.******@***.***"
Collecting git+https://
***@***.******@***.***
***@***.***> Cloning https://*@
github.com/doublethefish/tmap.git (to revision development) to
/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-req-build-c7j86vg5
Running command git clone --filter=blob:none --quiet 'https://
***@***.***/doublethefish/tmap.git
<http://github.com/doublethefish/tmap.git>'
/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-req-build-c7j86vg5
Running command git checkout -b development --track origin/development
Switched to a new branch 'development' Branch 'development' set up to track
remote branch 'development' from 'origin'. Resolved https://*@
github.com/doublethefish/tmap.git to commit 1e80147
<1e80147>
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Collecting scipy
Using cached scipy-1.9.3-cp310-cp310-macosx_12_0_arm64.whl (28.5 MB)
Collecting annoy~=1.17.0
Using cached annoy-1.17.1-cp310-cp310-macosx_12_0_arm64.whl
Requirement already satisfied: matplotlib in
./miniforge3/envs/tmap/lib/python3.10/site-packages (from tmap-viz==1.0.17)
(3.6.2)
Requirement already satisfied: packaging>=20.0 in
./miniforge3/envs/tmap/lib/python3.10/site-packages (from
matplotlib->tmap-viz==1.0.17) (22.0)
Requirement already satisfied: python-dateutil>=2.7 in
./miniforge3/envs/tmap/lib/python3.10/site-packages (from
matplotlib->tmap-viz==1.0.17) (2.8.2)
Requirement already satisfied: fonttools>=4.22.0 in
./miniforge3/envs/tmap/lib/python3.10/site-packages (from
matplotlib->tmap-viz==1.0.17) (4.38.0)
Requirement already satisfied: cycler>=0.10 in
./miniforge3/envs/tmap/lib/python3.10/site-packages (from
matplotlib->tmap-viz==1.0.17) (0.11.0)
Requirement already satisfied: numpy>=1.19 in
./miniforge3/envs/tmap/lib/python3.10/site-packages (from
matplotlib->tmap-viz==1.0.17) (1.24.0)
Requirement already satisfied: kiwisolver>=1.0.1 in
./miniforge3/envs/tmap/lib/python3.10/site-packages (from
matplotlib->tmap-viz==1.0.17) (1.4.4)
Requirement already satisfied: pyparsing>=2.2.1 in
./miniforge3/envs/tmap/lib/python3.10/site-packages (from
matplotlib->tmap-viz==1.0.17) (3.0.9)
Requirement already satisfied: pillow>=6.2.0 in
./miniforge3/envs/tmap/lib/python3.10/site-packages (from
matplotlib->tmap-viz==1.0.17) (9.2.0)
Requirement already satisfied: contourpy>=1.0.1 in
./miniforge3/envs/tmap/lib/python3.10/site-packages (from
matplotlib->tmap-viz==1.0.17) (1.0.6)
Requirement already satisfied: six>=1.5 in
./miniforge3/envs/tmap/lib/python3.10/site-packages (from
python-dateutil>=2.7->matplotlib->tmap-viz==1.0.17) (1.16.0)
Building wheels for collected packages: tmap-viz
Building wheel for tmap-viz (pyproject.toml) ... error
error: subprocess-exited-with-error
× Building wheel for tmap-viz (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [118 lines of output]
/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/overlay/lib/python3.10/site-packages/setuptools/config/_apply_pyprojecttoml.py:103:
_WouldIgnoreField: 'authors' defined outside of pyproject.toml would be
ignored.
!!
##########################################################################
# configuration would be ignored/result in error due to `pyproject.toml` #
##########################################################################
The following seems to be defined outside of `pyproject.toml`:
`authors = 'Daniel Probst'`
According to the spec (see the link below), however, setuptools CANNOT
consider this value unless 'authors' is listed as `dynamic`.
https://packaging.python.org/en/latest/specifications/declaring-project-metadata/
For the time being, `setuptools` will still consider the given value (as a
**transitional** measure), but please note that future releases of setuptools will
follow strictly the standard.
To prevent this warning, you can list 'authors' under `dynamic` or alternatively
remove the `[project]` table from your file and rely entirely on other means of
configuration.
!!
warnings.warn(msg, _WouldIgnoreField)
running bdist_wheel
running build
running build_py
creating build
creating build/lib.macosx-11.0-arm64-cpython-310
creating build/lib.macosx-11.0-arm64-cpython-310/tmap
copying src/tmap/embedding.py -> build/lib.macosx-11.0-arm64-cpython-310/tmap
copying src/tmap/plotting.py -> build/lib.macosx-11.0-arm64-cpython-310/tmap
copying src/tmap/__init__.py -> build/lib.macosx-11.0-arm64-cpython-310/tmap
creating build/lib.macosx-11.0-arm64-cpython-310/tmap/core
copying src/tmap/core/line.py -> build/lib.macosx-11.0-arm64-cpython-310/tmap/core
copying src/tmap/core/__init__.py -> build/lib.macosx-11.0-arm64-cpython-310/tmap/core
copying src/tmap/core/tmap_embedding.py -> build/lib.macosx-11.0-arm64-cpython-310/tmap/core
creating build/lib.macosx-11.0-arm64-cpython-310/tmap/layout_generators
copying src/tmap/layout_generators/__init__.py -> build/lib.macosx-11.0-arm64-cpython-310/tmap/layout_generators
copying src/tmap/layout_generators/annoy_layout_generator.py -> build/lib.macosx-11.0-arm64-cpython-310/tmap/layout_generators
copying src/tmap/layout_generators/base_layout_generator.py -> build/lib.macosx-11.0-arm64-cpython-310/tmap/layout_generators
copying src/tmap/layout_generators/builtin_layout_generator.py -> build/lib.macosx-11.0-arm64-cpython-310/tmap/layout_generators
creating build/lib.macosx-11.0-arm64-cpython-310/tmap/helpers
copying src/tmap/helpers/__init__.py -> build/lib.macosx-11.0-arm64-cpython-310/tmap/helpers
copying src/tmap/helpers/set_defaults.py -> build/lib.macosx-11.0-arm64-cpython-310/tmap/helpers
running egg_info
writing src/tmap_viz.egg-info/PKG-INFO
writing dependency_links to src/tmap_viz.egg-info/dependency_links.txt
writing requirements to src/tmap_viz.egg-info/requires.txt
writing top-level names to src/tmap_viz.egg-info/top_level.txt
reading manifest file 'src/tmap_viz.egg-info/SOURCES.txt'
writing manifest file 'src/tmap_viz.egg-info/SOURCES.txt'
running build_ext
Traceback (most recent call last):
File "<string>", line 27, in run
File "/Users/meddwl/miniforge3/envs/tmap/lib/python3.10/subprocess.py", line 421, in check_output
return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
File "/Users/meddwl/miniforge3/envs/tmap/lib/python3.10/subprocess.py", line 503, in run
with Popen(*popenargs, **kwargs) as process:
File "/Users/meddwl/miniforge3/envs/tmap/lib/python3.10/subprocess.py", line 971, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "/Users/meddwl/miniforge3/envs/tmap/lib/python3.10/subprocess.py", line 1847, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'cmake'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/meddwl/miniforge3/envs/tmap/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 351, in <module>
main()
File "/Users/meddwl/miniforge3/envs/tmap/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 333, in main
json_out['return_val'] = hook(**hook_input['kwargs'])
File "/Users/meddwl/miniforge3/envs/tmap/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 249, in build_wheel
return _build_backend().build_wheel(wheel_directory, config_settings,
File "/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/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 "/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 398, in _build_with_temp_dir
self.run_setup()
File "/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 484, in run_setup
super(_BuildMetaLegacyBackend,
File "/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 335, in run_setup
exec(code, locals())
File "<string>", line 94, in <module>
File "/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/overlay/lib/python3.10/site-packages/setuptools/__init__.py", line 87, in setup
return distutils.core.setup(**attrs)
File "/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/overlay/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 185, in setup
return run_commands(dist)
File "/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/overlay/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
dist.run_commands()
File "/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/overlay/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
self.run_command(cmd)
File "/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/overlay/lib/python3.10/site-packages/setuptools/dist.py", line 1208, in run_command
super().run_command(command)
File "/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/overlay/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
cmd_obj.run()
File "/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/overlay/lib/python3.10/site-packages/wheel/bdist_wheel.py", line 325, in run
self.run_command("build")
File "/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/overlay/lib/python3.10/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
self.distribution.run_command(command)
File "/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/overlay/lib/python3.10/site-packages/setuptools/dist.py", line 1208, in run_command
super().run_command(command)
File "/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/overlay/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
cmd_obj.run()
File "/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/overlay/lib/python3.10/site-packages/setuptools/_distutils/command/build.py", line 132, in run
self.run_command(cmd_name)
File "/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/overlay/lib/python3.10/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
self.distribution.run_command(command)
File "/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/overlay/lib/python3.10/site-packages/setuptools/dist.py", line 1208, in run_command
super().run_command(command)
File "/private/var/folders/58/6gqg3qf555lfcdvk2vbvf5_r0000gn/T/pip-build-env-z9yye9cj/overlay/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
cmd_obj.run()
File "<string>", line 29, in run
RuntimeError: CMake must be installed to build the following extensions: _tmap
[end of output]
note: This error originates from a subprocess, and is likely not a problem
with pip.
ERROR: Failed building wheel for tmap-viz
Failed to build tmap-viz
ERROR: Could not build wheels for tmap-viz, which is required to install
pyproject.toml-based projects
—
Reply to this email directly, view it on GitHub
<#33 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAQP37CZZC67V5YNLO7WYTDWOF2O7ANCNFSM55O2XVOA>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
Hi, also got trouble:
I installed both cmake and libomp with brew, and did
any idea? |
@Adafede try installing OMP, on OSX you can get this via homebrew Everyone: most researchers/data scientists/Phds I've managed or worked with know the basics of how to identify compiler errors, and the good ones are able to work out the specific errors for themselves. If you work out your specific problem, feel free to submit a PR against the README with how you solved it. That would be fair. Finally, if anyone wants to help me get the github actions uploading the python wheels to pypi, that would solve everyone's problems, including mine. |
@doublethefish It's installed. 😕
|
Perhaps start with googling your compiler error: I would also confirm that |
Have you gone through https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python#publishing-to-package-registries and https://github.com/pypa/gh-action-pypi-publish? |
Not yet, not even had time to google it. Thank you for sharing :) |
It is located where the @doublethefish I'll look for a more portable solution and let you know |
@doublethefish Here it is: doublethefish#1 CMake was not finding openMP properly, so just had to add |
Thank you @Adafede for this! Finally after a few hours of trying I could get tmap installed. Eager to start experimenting with it. I know everyone's system is different, but in case it's useful, here is what I, a conda/mamba devotee with an M1 Mac did to get the install to work.
|
For those who just want to install a local build of TMAP, I've created a bash script to do it. All you need to do is See https://gist.github.com/mjwen/0548a685412881f8802afcb31552b9f1 |
Met with multiple issues trying to install tmap into my Conda environments.
installing via "conda install -c tmap tmap"
This approach successfully installs a package called tmap, but I suspect it is the repo contained at https://github.com/GPZ-Bioinfo/tmap instead due to the matching file structure. Regardless, the install appears to be successful but once I attempt "import tmap" in a script or in the terminal, my kernel immediately dies.
installing via GitHub repo address
I am met with an error after a long pause where pip cannot access the GitHub repo. When git clone starts to run, the following error messages appear:
fatal: unable to connect to github.com: github.com[0: 140.82.121.4]: errno=Operation timed out
This approach results in various errors, most predominately a CMake Error. Also tried running this in a Rosetta terminal in case its an incompatibility with M1, but I am met with the same error.
Would anyone who has successfully installed tmap while using the M1 chip be able to provide some advice on how to install the package? Thank you
The text was updated successfully, but these errors were encountered: