前提:

使用mmyolo,部署完环境和依赖库之后运行程序,遇到报错:

ImportError: /home/ms/anaconda3/envs/torchMMyolo/lib/python3.8/site-packages/mmcv/_ext.cpython-38-x86_64-linux-gnu.so: undefined symbol: _ZN3c105ErrorC2ENS_14SourceLocationESs

问题:

版本不对应的问题(可能是torch或者cuda的版本和MMYOLO及其依赖包版本不对应,或者是别的问题。)

我之前是直接从别的torch虚拟环境, conda clone复制过来,确定cuda可用之后,直接部署的MMyolo和MMEngine, MMCV, MMDetection,然后出现了以上错误。

尝试把MMEngine, MMCV, MMDetection卸载,重装之后还是不行,这几个包之间的对应是没问题的,应该就是和克隆的conda (torch)环境里边原来的包之间有不对应的。

所以尝试了一种新的解决方式(以下),成功了。

解决方式:

1. 重新conda create了新的torch虚拟环境(注意torch、torchvision和cuda版本)

conda create -n mmyolo1 python=3.8 pytorch==1.10.0 torchvision==0.11.0 cudatoolkit=10.2 -c pytorch -y
conda activate mmyolo1

torch和cuda按之前的就行,在配其他环境的时候肯定对应过,我的是torch==1.10.0,cuda10.2(显卡是2080ti,驱动是470,环境外的cuda是11.1)

不确定对应版本的,可以查看pytorch官网(链接):Previous PyTorch Versions | PyTorch

配置完之后,查看一下cuda是否可用:

import torch
print(torch.__version__)  # 1.10.0
print(torch.version.cuda)  # 10.2
print(torch.cuda.is_available())  # True

2. 接着按照MMyolo安装教程,安装各个安装包即可

pip install openmim
mim install "mmengine>=0.3.1"
mim install "mmcv>=2.0.0rc1,<2.1.0"
mim install "mmdet>=3.0.0rc3,<3.1.0"
git clone https://github.com/open-mmlab/mmyolo.git
cd mmyolo  # 如果是直接从MMyolo官网下载、解压并创建好的project,直接在工程文件里运行后面两条指令即可
# Install albumentations
pip install -r requirements/albu.txt
# Install MMYOLO
mim install -v -e .

3. 运行demo,查看是否部署成功。

# 下载模型mim download mmyolo --config yolov5_s-v61_syncbn_fast_8xb16-300e_coco --dest .# 运行demopython demo/image_demo.py demo/demo.jpg \yolov5_s-v61_syncbn_fast_8xb16-300e_coco.py \yolov5_s-v61_syncbn_fast_8xb16-300e_coco_20220918_084700-86e02187.pth# 可选参数
# --out-dir ./output *检测结果输出到指定目录下,默认为./output, 当--show参数存在时,不保存检测结果
# --device cuda:0    *使用的计算资源,包括cuda, cpu等,默认为cuda:0
# --show             *使用该参数表示在屏幕上显示检测结果,默认为False
# --score-thr 0.3    *置信度阈值,默认为0.3

MMyolo报错:undefined symbol: _ZN3c105ErrorC2ENS_14SourceLocationESs 的解决方案相关推荐

  1. undefined symbol nvic 报错 undefined symbol TIM_Cmd报错

    目录 undefined symbol nvic 报错 undefined symbol TIM_Cmd报错 undefined symbol nvic 报错 原因是在FWLB文件夹中未加入misc. ...

  2. R语言readxl或者tidyverse安装报错undefined symbol libiconv

    我的生物信息专栏正式开启啦!!!为广大生物信息爱好者提供生信支持:拿来即可免安装部署到服务器的生信pipeline:R,python,C语言等包的debug:优秀文献内容解读等,欢迎订阅关注!!! 文 ...

  3. sslocal 报错undefined symbol: EVP_CIPHER_CTX_cleanup

    sslocal 报错undefined symbol: EVP_CIPHER_CTX_cleanup INFO: loading config from /etc/shadowsocks.json 2 ...

  4. conda安装bowtie2的报错:undefined symbol

    使用conda安装bowtie2遇到undefined symbol报错 /public/home/xuzhougeng/miniconda3/envs/bsseq/bin/bowtie2-build ...

  5. .php on line 0,控制台运行php报错 undefined symbol: gdImageCreateFromJpeg in Unknown on line 0 解决方法...

    之前把homestead中的nginx替换为openresty后就发现php控制台运行时会报一个错: undefined symbol: gdImageCreateFromJpeg in Unknow ...

  6. 【2020-06-16】CentOS8下yum安装nginx,systemctl start nginx报错undefined symbol: FT_Done_MM_Var

    这几天自己在家组了个机子,装了带GNOME的CentOS8.昨天整了个一键安装lnmp,中途报错.重启系统的时候发现我GNOME起不来了(不确定这是否与安装lnmp报错有关).于是先直接进入命令行系统 ...

  7. 编译报错undefined symbol: vtable for

    报错:undefined symbol: vtable for 原因:结构体/类中的某个方法不是纯虚函数,而且没有被定义. 解决方法:找到这个没有被定义的函数,然后定义即可.

  8. PHP扩展undefined symbol,基于phpx的扩展运行报错undefined symbol

    使用phpx写了一个简单的容器,想放到php中运行做点测试.我在这之前已经成功的写了一个dispatch_function注册到了swoole中,而且运行正常. 后面我又写了个C++类,新建了个PHP ...

  9. 报错 undefined symbol: _ZN6caffe26detail36_typeMetaDataInstance_preallocated_7E

    主要是pytorch版本的问题. 重新安装即可. 不需要卸载之前的,安装时会自动覆盖. 我安装了0.4.0的版本,你可以根据自己的情况安装需要的版本. pip install torch==0.4.0 ...

最新文章

  1. html中的两种标记,如何在html选项标记中实现两种不同的对齐?
  2. webservice jsonp格式调用
  3. 【技术累积】【点】【java】【27】@JSONField
  4. flask mysql 版本_flask 数据库字段类型
  5. w ndows8系统没有声音怎么,Windows 8.1 系统新装没有声音
  6. Halcon 一维测量
  7. 在设计数据库时,使用代码,对数据项调整形成数字字典(小代码)
  8. list遍历_Python遍历list,使用range和enumerate的效率区别
  9. 数据决策力是驱动企业发展的原动力
  10. 【树莓派C语言开发】实验13:雨滴传感器模块(关联PCF8591)
  11. tomcat下面的starup.bat的作用
  12. 模拟CMOS集成电路设计学习笔记(一)
  13. 【毕业设计】基于stm32的示波器设计与实现 - 单片机 物联网
  14. RC积分器充放电过程
  15. 游戏建模大神教你三招学会用maya制作三维动画特效
  16. 清华大学邓俊辉-数据结构MOOC笔记-树的概念及逻辑表示
  17. Linux中的大于号和小于号
  18. excel下拉菜单创建
  19. css过渡-动画-变换
  20. Windows 下安装 Ubuntu 双系统

热门文章

  1. 移动App统计指标汇总
  2. [网络安全课程实验]:基于nmap 的网络扫描和信息分析
  3. 练习STM32动态更改PWM波频率和占空比
  4. JDBC如何有效防止SQL注入
  5. 红石外汇|每日汇评:鲍威尔讲话助推黄金走出困境
  6. 苹果电脑如何正确断网?macOS操作系统断网方法来了
  7. VMware下载安装、虚拟机创建、CentOS8镜像下载配置的具体步骤
  8. TCP/IP协议知识梳理
  9. 生鲜配送app开发方案
  10. VC组合框的使用示例