-3

Lately I have been facing issues installing packages through pip.

For e.g. when I try to install the torch package, it fails with the below error

> arch
arm64
> python --version
3.10.12
❯ pip --version                                                         
pip 23.2.1 from /Users/vinayvaddiparthi/repos/makemore/.venv/lib/python3.10/site-packages/pip (python 3.10)
> python -m venv .venv
> source .venv/bin/activate
> pip install torch                                                       
ERROR: Could not find a version that satisfies the requirement torch (from versions: none)
ERROR: No matching distribution found for torch

Running it in the verbose mode, pip install -vv torch, shows that pip skips all available wheels since none of have system compatible tags. For e.g.

  Skipping link: none of the wheel's tags (cp310-none-macosx_10_9_x86_64) are compatible (run pip debug --verbose to show compatible tags): https://files.pythonhosted.org/packages/2e/27/5c912ccc490ec78585cd463198e80be27b53db77f02e7398b41305606399/torch-2.0.1-cp310-none-macosx_10_9_x86_64.whl (from https://pypi.org/simple/torch/) (requires-python:>=3.8.0)
  Skipping link: none of the wheel's tags (cp310-none-macosx_11_0_arm64) are compatible (run pip debug --verbose to show compatible tags): https://files.pythonhosted.org/packages/5a/77/778954c0aad4f7901a1ba02a129bca7467c64a19079108e6b1d6ce8ae575/torch-2.0.1-cp310-none-macosx_11_0_arm64.whl (from https://pypi.org/simple/torch/) (requires-python:>=3.8.0)

Similar logs appear for all versions of torch

Checking pip debug --verbose shows the following

❯ pip debug verbose | grep -i -E "macosx|cp310"                            
WARNING: This command is only meant for debugging. Do not use this with automation for parsing and getting these details, since the output and options of this command may change without notice.
  cp310-cp310-macosx_10_16_arm64
  cp310-cp310-macosx_10_16_universal2
  cp310-cp310-macosx_10_15_arm64
  cp310-cp310-macosx_10_15_universal2
  cp310-cp310-macosx_10_14_arm64
  cp310-cp310-macosx_10_14_universal2
  cp310-cp310-macosx_10_13_arm64
  cp310-cp310-macosx_10_13_universal2
  cp310-cp310-macosx_10_12_arm64
  cp310-cp310-macosx_10_12_universal2

I can see that macosx_11_0_arm64 tag is missing here which I believe is why pip is not able to install the wheel for that tag even though it is available. And I have no idea what makes it appear in that list.

I use pyenv for managing the Python environments and I'm not sure if that is causing any issue here.

MacOS details:

❯ sw_vers                                                                  
ProductName:        macOS
ProductVersion:     13.5
BuildVersion:       22G74

Please let me know if you need any more details and thanks for checking.

Vinay
  • 1,473
  • 4
  • 14
  • 24
  • I don't get the same issue as you on M1, probably the pip version that is being used cannot find torch. For that you could try updating first by using `pip install -U pip`. Also, you may try `pip3 install torch` or `python -m pip install torch`. – ccolin Aug 17 '23 at 04:56
  • @ccolin pip is already on the latest version. No luck with the 2 commands you suggested either – Vinay Aug 17 '23 at 13:59
  • Also, edited to add pip version – Vinay Aug 17 '23 at 14:13

1 Answers1

0

Someone answered this question for me on this GitHub issue.

Apparently, it is an issue in Python built with old macOS SDK. There is a workaround available for this but it hasn't landed in pip yet.

So for now, it can be solved manually like this:

SYSTEM_VERSION_COMPAT=0 pip install torch
Vinay
  • 1,473
  • 4
  • 14
  • 24