真是好事多磨啊,计算机系统依然是14.04,而cuda依然是8.0,唯一不同的是时间不一样,下载的各种库版本有差别,GPU的driver不一样。

但是这样就出问题了,py-faster rcnn的lib库编译时总是提示错误。

网上搜了开始的相关帖子都提示说是gcc的版本问题,但是我后来问了一下在原来单位的同事,gcc的版本也没问题,版本和原来用的一样。后来我把cython卸载(0.26.1),从新安装旧版本(0.19.1)依然同样的错误,我没有继续追究版本问题。昨天看到github上的一个帖子说是把-R改成 -Wl,-rpath=就可以了。参考:https://github.com/rbgirshick/py-faster-rcnn/issues/706

开始不知道改那些地方,昨天看了一天的Cython,看到下午四点钟头都打了,可以下班就马上滚了,不过也大概知道了编译的过程。今天一来,再顺着找,编译过程中根据setup.py文件里import的文件,有distutils.extension,也有Cython.Distutils下的。于是顺着distutils找。开始在distutils下找到了extension.py文件,里面定了了setup编译时的规则,但是我仔细看了一下,是如果传入的编译命令是哪一个,应该怎么定义。如果传入的是-R,那么应该怎么链接,其中有runtime_library_dir,而这个的值是哪里来的呢?于是再找,那就是找能对编译规则有影响的。换个地方找,找distutils下的,追个找了一下,看到文件uixccomplier.py,觉得应该是这里定义了对cython的setup编译的规则。果然打开看到了有一个函数是runtime_library_dir的生成定位规则,终于找到这个地方了,把返回-R +dir的地方改成'-Wl,-rpath='+dir。然后回到py-faster-rcnn的lib下,编译通过,一切搞定。

归咎原因应该是我安装的anaconda2里面的python的一些包升级了,规则改了。其实我在跑py-faster-rcnn时,有几个地方提示说默认是float,而我用来做index,是不可以的。因此,python版本的影响吧。我决定把anaconda换到低版本试试,不过也挺奇怪,我半年前下载的anaconda2,是没问题的,难道最近有更新很多吗?

py faster rcnn的lib编译出错问题的更多相关文章

  1. py faster rcnn+ 1080Ti+cudnn5.0

    看了py-faster-rcnn上的issue,原来大家都遇到各种问题. 我要好好琢磨一下,看看到底怎么样才能更好地把GPU卡发挥出来.最近真是和GPU卡较上劲了. 上午解决了g++的问题不是. 然后 ...

  2. faster rcnn 源码学习-------数据读入及RoIDataLayer相关模块解读

    参考博客:::https://www.cnblogs.com/Dzhen/p/6845852.html 非常全面的解读参考:::https://blog.csdn.net/DaVinciL/artic ...

  3. Faster R-CNN教程

    Faster R-CNN教程 最后更新日期:2016年4月29日 本教程主要基于python版本的faster R-CNN,因为python layer的使用,这个版本会比matlab的版本速度慢10 ...

  4. 如何才能将Faster R-CNN训练起来?

    如何才能将Faster R-CNN训练起来? 首先进入 Faster RCNN 的官网啦,即:https://github.com/rbgirshick/py-faster-rcnn#installa ...

  5. caffe学习一:ubuntu16.04下跑Faster R-CNN demo (基于caffe). (亲测有效,记录经历两天的吐血经历)

    兜兜转转,兜兜转转; 一次有一次,这次终于把Faster R-CNN 跑通了. 重要提示1:在开始跑Faster R-CNN之前一定要搞清楚用的是Python2 还是Python3. 不然你会无限次陷 ...

  6. python3 + Tensorflow + Faster R-CNN训练自己的数据

    之前实现过faster rcnn, 但是因为各种原因,有需要实现一次,而且发现许多博客都不全面.现在发现了一个比较全面的博客.自己根据这篇博客实现的也比较顺利.在此记录一下(照搬). 原博客:http ...

  7. faster r-cnn 在CPU配置下训练自己的数据

    因为没有GPU,所以在CPU下训练自己的数据,中间遇到了各种各样的坑,还好没有放弃,特以此文记录此过程. 1.在CPU下配置faster r-cnn,参考博客:http://blog.csdn.net ...

  8. 新人如何运行Faster RCNN的tensorflow代码

    0.目的 刚刚学习faster rcnn目标检测算法,在尝试跑通github上面Xinlei Chen的tensorflow版本的faster rcnn代码时候遇到很多问题(我真是太菜),代码地址如下 ...

  9. faster rcnn训练详解

    http://blog.csdn.net/zy1034092330/article/details/62044941 py-faster-rcnn训练自己的数据:流程很详细并附代码 https://h ...

随机推荐

  1. Java动态性 字节码操作

    Java动态性的两种常见方式:-字节码操作 - 反射;字节码操作比反射开销小,性能高,JAVAasist性能高于反射,低于ASM 运行时操作字节码可是实现  : 动态生成新的类:动态的改变某个类的结构 ...

  2. ubuntu中mysql5.7表名区分大小写解决方案

    在/etc/mysql/mysql.conf.d/mysqld.cnf 添加lower_case_table_names=1

  3. 11、幻灯片:Slides

    /* ---ts----*/ import { Page,Slides } from 'ionic-angular'; import { ViewChild } from '@angular/core ...

  4. axios请求报Uncaught (in promise) Error: Request failed with status code 404

    使用axios处理请求时,出现的问题解决 当url是远程接口链接时,会报404的错误: Uncaught (in promise) Error: Request failed with status ...

  5. jstl标注标签库

    1.  常用标签 引入标签库: <%@ taglib prefix=”c” uri=”” %> 1.      C 标签   (1)<c:out value=”” default=” ...

  6. 天气小雨, 心情多云, 练习标准的键盘ABC打法

    今天看到饿了么转型生活做千亿美元公司 突然想到一些就写下来 当时外卖一份8元 10元的年代那个开心啊 很久以前宁可跑个远, 都不愿意叫外卖 叫了大概1年的外卖了, 之前还感到便宜多样, 现在感觉到的是 ...

  7. 原生js封装十字参考线插件(一)

    需求来源: 拓扑图之机房平面图,显示机房长宽比例尺,房间内标注各种设备间距不易实现,特在机房平面图上层加一个十字参考线 横竖两条线垂直,在鼠标指针处交叉,显示鼠标指针坐标(相对机房平面图的坐标,不是相 ...

  8. 自封装ajax

    项目中有时候用不到jq,需要了解xmlhttp原理,自己写一套函数请求和发送数据! /* 封装ajax函数 * @param {string}opt.type http连接的方式,包括POST和GET ...

  9. Cloud

    Cloud = Data + Routing + Computing + Storage

  10. Android NestedScrollView与RecyclerView嵌套,以及NestedScrollView不会滚动到屏幕顶部解决

    ①NestedScrollView与RecyclerView嵌套,导致滚动惯性消失 解决:mRecyclerView.setNestedScrollingEnabled(false); ②Nested ...