I'm trying to set up our usual Anaconda development environment on a new Windows 10 PC. I downloaded the latest version of Anaconda last week (version 2023.09, I believe), and I'm having trouble installing pyocd. pyocd installed easily on all the other PCs several months ago.
I ran conda using Anaconda Powershell Prompt in administrator mode. Here's what conda returns:
(base) PS C:\WINDOWS\system32> conda install -c conda-forge pyocd
>> Collecting package metadata (current_repodata.json): done
Solving environment: unsuccessful initial attempt using frozen solve. Retrying with flexible solve.
Solving environment: unsuccessful attempt using repodata from current_repodata.json, retrying with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: unsuccessful initial attempt using frozen solve. Retrying with flexible solve.
Solving environment: \
Found conflicts! Looking for incompatible packages.
This can take several minutes. Press CTRL-C to abort. failed /
UnsatisfiableError: The following specifications were found to be incompatible with each other:
Output in format: Requested package -> Available versions
The error messages are pretty unhelpful - I'd try installing downrev packages, but I don't know which ones to downgrade. Any ideas what's going on?
UPDATE I updated conda, and now it actually gives me actionable error messages:
(base) PS C:\WINDOWS\system32> conda install -c conda-forge pyocd
>> Channels:
- conda-forge
- defaults
- anaconda Platform: win-64
Collecting package metadata (repodata.json): done
Solving environment: | warning libmamba Added empty dependency for problem type SOLVER_RULE_UPDATE failed
LibMambaUnsatisfiableError: Encountered problems while solving:
- package pyocd-0.34.0-pyhd8ed1ab_0 requires cmsis-pack-manager >=0.4.0,<1.0, but none of the providers can be installed
Could not solve for environment specs The following packages are incompatible
├─ pin-1 is installable and it requires
│ └─ python 3.11.* , which can be installed;
└─ pyocd is not installable because it requires
└─ cmsis-pack-manager >=0.4.0,<1.0 but there are no viable options
├─ cmsis-pack-manager 0.4.0 would require
│ └─ python >=3.10,<3.11.0a0 , which conflicts with any installable versions previously reported;
├─ cmsis-pack-manager 0.4.0 would require
│ └─ python >=3.7,<3.8.0a0 , which conflicts with any installable versions previously reported;
├─ cmsis-pack-manager 0.4.0 would require
│ └─ python >=3.8,<3.9.0a0 , which conflicts with any installable versions previously reported;
└─ cmsis-pack-manager 0.4.0 would require
└─ python >=3.9,<3.10.0a0 , which conflicts with any installable versions previously reported.
Pins seem to be involved in the conflict. Currently pinned specs:
- python 3.11.* (labeled as 'pin-1')
I'm a python/anaconda noob, so I don't know what to do with this info (yet), but I'm continuing to work on it.
Although the pyocd
package is technically noarch
(i.e., independent of Python version), it depends on cmsis-pack-manager
, which has failed to be rebuilt for Python 3.11+. It would be encouraging to maintainers to comment on that Pull Request to voice your desire that this be built. Or if, you have insight into why it fails, contribute a PR.
Otherwise, you'll need to instead install the package in a Python 3.10 or earlier environment. For example,
conda create -n py310 -c conda-forge python=3.10 pyocd