weixin_52076111 2022-12-05 21:41 采纳率: 100%
浏览 101
已结题

Windows下编译RROI_align出错

Windows下编译RROI_align出错
项目文件是https://github.com/GXYM/DRRG 里的csrc
我按照项目里的要求,cuda装的10.0,python和pytorch都是anaconda里面安装的,python版本是3.7.0,pytorch版本是1.2.0,用的gcc来执行make命令,但不知道为什么编译到中间就停止,也没有显示错误信息

结果如下

img

一开始编译不了但显示出了错误,根据这些错误百度后修改了一些文件后可以编译生成一个pyd文件,但是项目运行时不能导入。所以又是一阵操作(重装VS,重装anaconda,重装cuda),结果现在直接到中间就停止了,请问这是怎么回事?
除了换系统外,对于这样的原项目在Linux下的需要编译的项目有什么好的解决方案吗?(有个疑问,为什么项目作者不直接把编译好的文件放到项目里或者直接用python文件来实现rroi_align呢?)
  • 写回答

3条回答 默认 最新

  • 爱晚乏客游 2022-12-06 00:57
    关注

    项目要求的cuda是10.1吧.
    另外,项目里面有个setup.py文件,你可以用python环境编译。不过在这之前,你需要将c++和cuda文件的换行符全部改成CR LF才行,不然linux下面的LF换行符是编译不过的。不过你的pyd文件是有报错还是没有报错,如果编译过程中没有报错的话,一般将pyd文件复制到setup.py同级目录下面就可以了
    运行

     cd DRRG/csrc/
      python setup.py build_ext --inplace
    

    我试了下,torch1.8.2+cu111+python3.8可以正确编译,只要三个文件在编译中会报错的这里加个long强制转换一下就可以了。总共有6个位置应该,你编译的时候会报错,找到对应的文件和行数就行

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 12月14日
  • 已采纳回答 12月6日
  • 创建了问题 12月5日