yolact模型DCNv2模块编译错误解决方法
配置环境
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模块编译错误解决方法相关推荐
- java telephony jar_编译错误解决方法
首页板块列表刷机技术阅读帖子 编译错误解决方法 发布时间:2015-05-19 18:153回复.2072阅读 前言:关于Android4.4/CM11编译中遇到的一些错误,本人进行了整理.有需要的童 ...
- 射手播放器编译错误解决方法(splayer)
1. 编译时有几个处需要统一: 字符集要统一,或者都为Unicode编码: MFC的使用,或者都选为在共享DLL中使用MFC: 使用ATL,或者都选中动态链接到ATL: 另外该安装的库要装上,如Dir ...
- FreeCAD编译错误解决方法
freeCAD是学习OCC库和Qt的一个重要开源软件,但在vs编译时很容易出现错误,例如我就出现了如下关于PartDesign的错误.在网上查了一些解决方法后,解决方法流程如下: 1)在cpp前面添加 ...
- machoview github原版下载后编译错误解决方法,附能编译的源码下载
文章目录 错误:unable to find sdk 'macosx10.9' 错误:'string' file not found 错误:'capstone.h' file not found wi ...
- Thrift编译错误解决方法
下面这个错误可能是因为DOS(Windows)和Unix文件格式问题: checking whether g++ supports C++11 features by default... no ch ...
- Error: illegal character: '\u200b'编译错误解决方法
Error: illegal character: '\u200b' 编译错误如下 错误原因 此类错误关注这个错误的字符--'\u200b' '\u200b'表示为zero-width-space,以 ...
- vs2008添加excel类编译错误解决方法
1.注释掉#import "C:\\Program Files\\Microsoft Office\\Office12\\EXCEL.EXE" no_namespace 2.选择添 ...
- duilib编译错误解决方法整理 (含VS2013)
此文转载,原文:http://blog.csdn.net/x356982611/article/details/30217473 @1:找不到Riched20.lib 用everything等软件搜索 ...
- 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. 背 ...
最新文章
- SSO(Single Sign-on) in Action
- 如何使用实时计算 Flink 搞定实时数据处理难题?
- 550什么意思_研报翻译官第二期:带你了解什么是CPI
- PHP 通过设置P3P头来实现跨域访问COOKIE
- 1.x和2.x的区别
- linux命令行下全路径显示,显示命令及文件路径用什么命令?Linux命令知识有什么...
- 打通语言理论和统计 NLP 两个世界,Transformers/GNNs 架构能做到吗?
- get_free_page 和其友
- nmap扫描ipv6端口_web渗透测试系列 之 扫描(3)
- cpu out of order, 性能优化
- eclipse启动tomcat报错:org.apache.logging.log4j.web.Log4jServletContextListener
- 光流(六)--L2范数Horn–Schunck 光流法及应用demo
- Django REST framework+Vue 打造生鲜超市(九)
- 【POJ 1456】Supermarket【两种做法】【二叉堆贪心】【并查集】
- BBS论坛系统需求说明书
- Flash CS3无法导出测试影片问题解决
- TPS63020-电池升降压芯片及静态电流7~8mA原因
- Unity Spine动画如何选定帧数(时间)播放
- 连续剧网页服务器搭建,电影服务器的架设及其安全防范配置流媒体服务器 -电脑资料...
- SATA OOB CTS测试项解析