mmcv安装记录

本文档详细介绍了如何在Windows和Ubuntu环境下从源码编译mmcv的过程,包括环境搭建、依赖安装及常见问题解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 由于官方提供的win版本有限,需要自己源码编译mmcv,特此记录。

注:最后附加ubuntu下编译遇到的问题。

目录

1 window编译

1.1 准备

1.2 安装python环境

1.3 编译mmcv

2. ubuntu编译


1 window编译

1.1 准备

提前下载好mmcv-master.zip或者gi clone下来:

GitHub - open-mmlab/mmcv: OpenMMLab Computer Vision FoundationOpenMMLab Computer Vision Foundation. Contribute to open-mmlab/mmcv development by creating an account on GitHub.https://github.com/open-mmlab/mmcv

还有提前下载好mmflow-master.zip

安装:

Visual Studio Community 2019

Anaconda3

cuda11.1

1.2 安装python环境

conda create --name mmcv python=3.7  # 3.6, 3.7, 3.8 should work too as tested
conda activate mmcv  # make sure to activate environment before any operation

 torch-1.8.0+cu111-cp37-cp37m-win_amd64.whl

https://download.pytorch.org/whl/cu111/torch-1.8.0%2Bcu111-cp37-cp37m-win_amd64.whlhttps://download.pytorch.org/whl/cu111/torch-1.8.0%2Bcu111-cp37-cp37m-win_amd64.whltorchvision-0.9.0+cu111-cp37-cp37m-win_amd64.whl

https://download.pytorch.org/whl/cu111/torchvision-0.9.0%2Bcu111-cp37-cp37m-win_amd64.whlhttps://download.pytorch.org/whl/cu111/torchvision-0.9.0%2Bcu111-cp37-cp37m-win_amd64.whl

pip install  torch-1.8.0+cu111-cp37-cp37m-win_amd64.whl

pip install torchvision-0.9.0+cu111-cp37-cp37m-win_amd64.whl

cd mmcv
pip install -r requirements.txt

1.3 编译mmcv

严格按照官网要求设置

(0)Set up MSVC compiler

测试是否配置成功:

  

(1)cuda

安装了cuda,环境变量自己会有

(2) 设置环境变量 CUDA target arch

查询自己的gpu算力,我的是3090,算力是8.6

TORCH_CUDA_ARCH_LIST:8.6

(3)设置环境变量ops和cpu cores

MAX_JOBS:8

MMCV_WITH_OPS:1

 然后开始编译(严格配置前面的环境变量

conda activate mmcv
# change directory
cd mmcv
# build
python setup.py build_ext # if success, cl will be launched to compile ops

编译成功(示例)

如何没有打印很多信息,则是失败了,重新确认一遍流程。

编译失败(示例)

 失败了,就不会打印很多信息。

安装mmcv:

# install
python setup.py develop
# check
pip list

 安装成功:

 

发现,mmcv和mmcv-full都有。

问题:安装时,如果卡住了,有可能是下载东西很慢,如下。

下载opencv很慢,可以先把opencv安装好:

pip install opencv-python opencv-contrib-python

然后再次安装mmcv:

python setup.py develop

如果输入conda list,报错

CondaError: Expected exactly one `egg-info` directory in 'D:\code\PycharmProjects\mmcv'

 则删除conda环境中的文件mmcv-full.egg-link

win编译安装结束。


2. ubuntu编译

严格安装官方教程:Build MMCV from source — mmcv 1.7.0 documentation

Build on Linux

  1. Clone the repo

    git clone https://github.com/open-mmlab/mmcv.git
    cd mmcv
    
  2. Install ninja and psutil to speed up the compilation

    pip install -r requirements/optional.txt
    
  3. Check the nvcc version (requires 9.2+. Skip if no GPU available.)

    nvcc --version
    

    If the above command outputs the following message, it means that the nvcc setting is OK, otherwise you need to set CUDA_HOME.

    nvcc: NVIDIA (R) Cuda compiler driver
    Copyright (c) 2005-2020 NVIDIA Corporation
    Built on Mon_Nov_30_19:08:53_PST_2020
    Cuda compilation tools, release 11.2, V11.2.67
    Build cuda_11.2.r11.2/compiler.29373293_0
    

    NOTE

    If you want to support ROCm, you can refer to AMD ROCm to install ROCm.

  4. Check the gcc version (requires 5.4+)

    gcc --version
    
  5. Start building (takes 10+ min)

    MMCV_WITH_OPS=1 pip install -e . -v
    
  6. Validate the installation

    python .dev_scripts/check_installation.py

实操记录:

编译一切顺利。 但是测试时报错:ModuleNotFoundError: No module named 'mmcv._ext'

 根据官方的解决办法:

其实原因就是在源码编译安装之前已经尝试过pip install mmcv安装了mmcv,必须把这个卸载即可。

### 安装mmcv版本0.9与Python 3.6环境 要在Python 3.6环境中安装特定版本的 `mmcv`(即版本0.9),可以按照以下方法操作: #### 方法一:通过pip安装指定版本 如果目标机器已配置好支持Python 3.6的pip工具,则可以通过命令行直接安装所需的 `mmcv` 版本。 运行以下命令来安装 `mmcv==0.9`: ```bash pip install mmcv==0.9 ``` 此命令会自动下载并安装对应版本的 `mmcv` 库到当前激活的Python虚拟环境中[^1]。 #### 方法二:验证依赖项兼容性 由于某些库可能对不同版本的Python存在兼容性问题,在执行上述命令之前,建议先确认所使用的Python解释器是否满足最低要求。对于Python 3.6的支持情况,通常需要查阅官方文档或源码仓库中的说明文件以获取更详细的指导信息[^2]。 另外需要注意的是,部分深度学习框架及其扩展模块可能会绑定特定CUDA驱动程序或者cuDNN SDK版本号,请确保本地开发平台已经正确设置了这些必要的硬件加速组件[^3]。 #### 方法三:手动编译安装(可选) 当预构建包无法适用于特殊场景时,可以选择从源代码开始自行构建适合自己的软件副本。具体流程如下所示: 1. **克隆项目存储库** 使用Git客户端拉取最新版源码至工作目录下: ```bash git clone https://github.com/open-mmlab/mmcv.git cd mmcv ``` 2. **切换分支/标签** 找到对应的release tag名称, 并检出该历史提交记录作为基础进行后续定制化修改. ```bash git checkout tags/v0.9 -b v0.9-branch ``` 3. **准备环境变量** 设置一些全局参数以便于交叉编译过程顺利开展. 4. **启动makefile脚本** 根据提示逐步完成整个组装环节直至最终产物生成完毕为止. 以上便是关于如何利用Python 3.6成功部署MMDetection核心组成部分之一——MMCV Version 0.9 的解决方案概述。
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr.Q

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值