Version incompatibility between MMCV, MMDetection, and MMPose on Windows (no compatible combination available) #3307
Unanswered
liuhaoran-0725
asked this question in
Q&A
Replies: 1 comment
-
|
Hmm, maybe this kind of dependency issue isn't actually a dealbreaker. Sometimes exceptions like "mmdet requires mmcv>=2.0.0" can simply be ignored—you could just comment it out and see what happens. It's worth a try; it might just work! |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hello,
I’m currently trying to run MMPose on Windows, but I keep encountering dependency and version incompatibility errors between mmcv, mmdet, and mmpose.
My environment
OS: Windows 11 (64-bit)
Python: 3.10.11
PyTorch: 2.10.0.dev + CUDA 12.8 (nightly build)
NumPy: 2.2.6
MMCV: 2.2.0
MMDetection: 3.2.0
MMPose: 1.x branch (installed from source)
Main error
AssertionError: MMCV==2.2.0 is used but incompatible.
Please install mmcv>=2.0.0rc4, <2.2.0.
Problem description
MMDetection 3.2.0 explicitly requires mmcv < 2.2.0.
However, on Windows there are no available pre-built wheels for mmcv 2.0.x or 2.1.x.
When pip or mim tries to build those versions from source, the build fails.
As a result, the only version that can be installed is mmcv 2.2.0 — but this version triggers the compatibility assertion above.
In addition to the version conflict, NumPy 2.x also causes ABI errors with compiled modules like mmcv and xtcocotools:
ValueError: numpy.dtype size changed, may indicate binary incompatibility.
A module compiled using NumPy 1.x cannot be run in NumPy 2.x.
Downgrading NumPy to 1.26.4 fixes the ABI issue, but the mmcv–mmdet version constraint remains unsatisfied.
Summary
At the moment, there is no installable or runnable combination of mmcv, mmdet, and mmpose on Windows that meets all dependency constraints:
mmcv 2.2.0 is too new for mmdet 3.2.0
mmcv 2.0.x–2.1.x cannot be installed on Windows (no binary wheels)
building mmcv from source fails under Windows + CUDA 12.x
mmpose 1.x depends on mmdet 3.2.0 and cannot move to mmcv ≥2.2.0
This effectively creates a “dependency deadlock” for users on Windows with recent CUDA versions.
My question
Is there currently any officially supported combination (or upcoming release) that resolves this version conflict on Windows?
In other words, is there a way to run MMPose and MMDetection together under CUDA 12.x using a compatible mmcv version without rebuilding from source?
Thank you for your time and any clarification regarding planned compatibility updates.
Beta Was this translation helpful? Give feedback.
All reactions