配置环境

1. Ubuntu 18.04

2. Anaconda

3.Cuda10.2+cudnn7.6.5

问题描述

按照yolact(https://github.com/dbolya/yolact)给的DNCv2链接https://github.com/CharlesShang/DCNv2/tree/pytorch_1.0对DNCv2进行编译时出现以下错误:

error: identifier "THCState_getCurrentStream" is undefined

解决方法

1. 首先检查了anaconda环境中的cuda和cudnn是否与系统安装的版本是否一致(OK);

2. 然后检查了.bashrc文件中的环境变量路径是否正确(OK);

3. 接着用某度度了若干教程,没有成功解决问题;

4. 使用Bing搜索了相关问题,查看到以下链接(https://github.com/CharlesShang/DCNv2/issues/57):讨论文的问题为:

DCNv2/src/cuda/dcn_v2_cuda.cu(107): error: identifier "THCState_getCurrentStream" is undefined #57

oh, my god. 又回到了Github/(ㄒoㄒ)/~~  这里面罗列了45个issue. 根据大佬们的讨论,看到了点赞比较多的解决方案:https://github.com/jinfagang/DCNv2_latest

5. 将DCNv2_latest包git下来,替换yolact中对应的文件夹,然后进行编译. 在编译的时候需要注意make.sh脚本文件,其内容为:

#!/usr/bin/env bash
sudo rm *.so
sudo rm -r build/
sudo python3 setup.py build develop

如果是非Anaconda环境,上述编译过程应该不会出问题,其实可以把sudo给del掉,不然运行时可能会要求权限; 主要说一下我的情况吧,上述提到我的配置环境为Anaconda,因此在虚拟环境中运行上述脚本会报错: 找不到torch模块. 因为给了sudo权限,因此是在全局环境下寻找相关模块,就可能引起错误. 针对此类问题,只需要将sudo全部del掉,这样在编译的时候就只在虚拟环境下寻找相关的模块或包. 然后就可以愉快的测试了☺

参考链接

1.yolact: https://github.com/dbolya/yolact
2.DCNv2: https://github.com/CharlesShang/DCNv2/tree/pytorch_1.0
3.DCNv2讨论: https://github.com/CharlesShang/DCNv2/issues/57
4.DCNv2_lastest: https://github.com/jinfagang/DCNv2_latest

yolact模型DCNv2模块编译错误解决方法相关推荐

  1. java telephony jar_编译错误解决方法

    首页板块列表刷机技术阅读帖子 编译错误解决方法 发布时间:2015-05-19 18:153回复.2072阅读 前言:关于Android4.4/CM11编译中遇到的一些错误,本人进行了整理.有需要的童 ...

  2. 射手播放器编译错误解决方法(splayer)

    1. 编译时有几个处需要统一: 字符集要统一,或者都为Unicode编码: MFC的使用,或者都选为在共享DLL中使用MFC: 使用ATL,或者都选中动态链接到ATL: 另外该安装的库要装上,如Dir ...

  3. FreeCAD编译错误解决方法

    freeCAD是学习OCC库和Qt的一个重要开源软件,但在vs编译时很容易出现错误,例如我就出现了如下关于PartDesign的错误.在网上查了一些解决方法后,解决方法流程如下: 1)在cpp前面添加 ...

  4. machoview github原版下载后编译错误解决方法,附能编译的源码下载

    文章目录 错误:unable to find sdk 'macosx10.9' 错误:'string' file not found 错误:'capstone.h' file not found wi ...

  5. Thrift编译错误解决方法

    下面这个错误可能是因为DOS(Windows)和Unix文件格式问题: checking whether g++ supports C++11 features by default... no ch ...

  6. Error: illegal character: '\u200b'编译错误解决方法

    Error: illegal character: '\u200b' 编译错误如下 错误原因 此类错误关注这个错误的字符--'\u200b' '\u200b'表示为zero-width-space,以 ...

  7. vs2008添加excel类编译错误解决方法

    1.注释掉#import "C:\\Program Files\\Microsoft Office\\Office12\\EXCEL.EXE" no_namespace 2.选择添 ...

  8. duilib编译错误解决方法整理 (含VS2013)

    此文转载,原文:http://blog.csdn.net/x356982611/article/details/30217473 @1:找不到Riched20.lib 用everything等软件搜索 ...

  9. Linux编译遇到各种错误解决方法,例如 /lib/modules/3.10.0-(xxx).el7.x86_64/build: No such file or directory. Stop.

    Linux编译遇到各种错误解决方法,例如: /lib/modules/3.10.0-(xxx).el7.x86_64/build: No such file or directory. Stop. 背 ...

最新文章

  1. 微信小程序在showToast中换行并且隐藏icon
  2. matplotlib生成指定大小的空白的白色图(故意保存)实战:当然也可以保存正常的有内容的图像
  3. Android开发自定义View
  4. 学习_HTML5_day2
  5. 过分了,这样阅读Datasheet(数据手册)合适吗?
  6. pycharm 2020 版取消鼠标悬停显示说明文档的方法
  7. 在线直播系统源码,进入新的界面后自动刷新内容
  8. CSS简易导航列表样式
  9. 愿你不会像我一样,活成狗一般的生活!
  10. matlab 直方图(柱状图) 及 CDF曲线
  11. 16岁天才开发的Summly获李嘉诚种子投资
  12. 德鲁克管理思想精髓的17个关键词
  13. FTP上传文件报错200 PORT command successful. Consider using PASV. 553 Could not create file.
  14. 神奇密码锁 bfs
  15. Dynamips路由模拟器使用心得
  16. mysql8 rank_jfinal 用mysql8.0的rank函数报错
  17. IA-32寄存器基本介绍
  18. Window10配置PHPnow
  19. 计算机考证除了软考还有什么(全)
  20. 危险!全球未打补丁的 VMware ESXi 服务器被勒索组织盯上了

热门文章

  1. 如何创建mysql分区表_mysql分区表创建思路
  2. ubuntu下编写C语言程序
  3. 四种解决Vue中重复点击相同路由控制台报错问题( Avoided redundant navigation to current location)
  4. 【观察】中国跨境电商出海再加速背后,如何破解行业同质化竞争困局?
  5. 2022 年卡塔尔世界杯冠军可能是谁?
  6. 'Bullet' object has no attribute 'draw_bullet'
  7. 新一代视频压缩技术 H.265 解析
  8. WOBENZYMN PS REVISED 100'S
  9. 电脑速度慢的一些方法
  10. zoj3380 Patchouli's Spell Cards