安装mmdetection,运行报错Segmentation fault
具体安装过程详见https://github.com/open-mmlab/mmdetection/blob/master/docs/INSTALL.md
在安装完成mmdetection后运行test文件报错Segmentation fault(core dumped),查询后发现是由于gcc版本问题,运行mmdetection需要gcc版本大于等于4.9
安装gcc版本
因为我是在服务器上运行mmdetection,因此是在非root权限下配置自己的GCC版本,具体操作如下
- 下载gcc:gcc下载地址
安装过程:
- 解压安装GCC tar.bz2包
- 进入解压包,在命令行执行输入如下语句
tar -xjvf gcc-4.9.3.tar.bz2 # 解压 tar.bz2
cd gcc-4.9.3
./contrib/download_prerequisites # 执行下载gcc依赖包命令
- 配置软连接
mkdir objdir
cd objdir
../configure --disable-checking --enable-languages=c,c++ --disable-multilib --prefix=/path/to/install/gcc-4.9.3 --enable-threads=posix
make -j64 # 多线程编译,否则很慢,能多开就多开几个线程
make install
/path/to/install/gcc-4.9.3是自己创建的安装gcc的目录
为当前用户配置系统环境变量
- 输入cd ~回到用户目录
- 打开bashrc文件: vim ~/.bashrc
- 在文件末尾加入如下代码
export PATH=/path/to/install/gcc-4.9.3/bin:/path/to/install/gcc-4.9.3/lib64:$PATH
export LD_LIBRARY_PATH=/path/to/install/gcc-4.9.3/lib/:$LD_LIBRARY_PATH
- 输入 source ~/.bashrc 更新环境变量
- 输入 gcc -v 查看版本

安装完gcc后需要重新编译mmdetection 的配置文件
执行如下命令进行清理
python setup.py clean --all
编译mmdetection
pip install -v -e .
这个时候就可以成功运行test文件了
注:有些依赖项是可安可不安的,只运行pip install -v -e . 会安装运行所必须的依赖项,若想安装诸如albumentations , imagecorruptions这些依赖项可以执行pip instal -r requirements/optional.txt,或者直接用pip install [依赖项名字]就可以
安装mmdetection,运行报错Segmentation fault的更多相关文章
- yum安装软件报错Segmentation fault处理
yum安装软件报错Segmentation fault处理 在使用yum 更新软件时提示:Segmentation fault 中文错误提示: 段错误 [root@CMS-BAK:/usr/local ...
- Heka 编译安装后 运行报错 panic: runtime error: cgo argument has Go pointer to Go pointer
Heka 编译安装后 运行报错 panic: runtime error: cgo argument has Go pointer to Go pointer 解决办法: 1. Start heka ...
- Python首次安装后运行报错(0xc000007b)的解决方法
最近在安装完Python后运行发现居然报错了,错误代码是0xc000007b,于是通过往上查找发现是因为首次安装Python缺乏VC++库的原因,下面通过这篇文章看看如何解决这个问题吧. 错误提示 ...
- yum报错Segmentation fault
yum install 安装一个包,提示 Segmentation fault,可以确定的是这个源肯定是可用的. 经查询,是 libz 这个库存在多个版本,导致冲突. # ldconfig -v | ...
- npm 安装文件 运行报错 %1 is not a valid Win32 application
安装了那个模板出了错报这样的错误 “%1 is not a valid Win32 application” 你就除那个模板新安装. 如下例: 运行 npm install -g @angular/c ...
- 【python】python安装和运行报错汇总
本文主要用于汇总在python开发过程中遇到的各种环境.工具相关问题,便于后续遇到相关问题,及时搞定,持续更新. 一.安装pip失败,具体如下: 错误信息: python setup.py insta ...
- vue 安装 ‘node-sass’ 运行报错:ERROR in Cannot find module 'node-sass'
好像是由于cnpm安装导致.执行下面的安装代码,或者使用npm 安装node-sass cnpm install node-sass@latest
- ansible安装后运行报错cryptography
[root@kazihuo ~]# ansible all -m ping ERROR! Unexpected Exception, this is probably a bug: (cryptogr ...
- 47、安装node-sass后运行报错
vue安装node-sass编译报错安装node-scss报错安装node-scss报错在搭建vue脚手架 或者是在vue项目中,想使用sass的功能, npm install node-sass - ...
随机推荐
- NGK治理机制研究
治理机制是区块链项目的重要设计.随着项目的运行,生态中的参与者需要根据实际运行情况对项目进行必要的更新和升级,以使项目持续良性发展.治理机制的作用是使不同参与者最终达成共识.治理机制直接决定这个网络生 ...
- [转]ubuntu系统重新分区、根目录扩容
原文地址:https://blog.csdn.net/code_segment/article/details/79237500,转载主要方便随时查阅,如有版权要求,请及时联系. gparted是一款 ...
- linux系统忘记root的登录密码
参考链接:https://www.jb51.net/article/146541.htm 亲测有效 使用场景 linux管理员忘记root密码,需要进行找回操作. 注意事项:本文基于centos7环 ...
- IDEA总结
1. 什么是idea? idea是Java开发软件 2. IDEA下载 https://www.jetbrains.com/idea/download/download-thanks.html?pla ...
- StrictMode 检测应用
Application, Activity, or other application component's onCreate() method:if (BuildConfig.SHOW_LOG) ...
- Gc root 定义
常说的GC(Garbage Collector) roots,特指的是垃圾收集器(Garbage Collector)的对象,GC会收集那些不是GC roots且没有被GC roots引用的对象.一个 ...
- 后端程序员之路 46、Redis Sentinel
Sentinel - Redis 命令参考http://doc.redisfans.com/topic/sentinel.html#sentinel-api Guidelines for Redis ...
- 使用 Java 开发 Gradle 插件
Gradle 插件代码可以在 build.gradle 中,buildSrc 项目中,以及独立的插件项目中编写.本文将介绍如何在一个独立的项目中使用 Java 语言编写 Gradle 插件,并发布到仓 ...
- KeyboardDemo - Android身份证号、车牌号快捷输入键盘
Android身份证号.车牌号快捷输入键盘 项目地址 Github 键盘部分在 keyboard module 中 键盘与EditText绑定参照 MainActivity
- springboot源码解析-管中窥豹系列之EnableXXX(十)
一.前言 Springboot源码解析是一件大工程,逐行逐句的去研究代码,会很枯燥,也不容易坚持下去. 我们不追求大而全,而是试着每次去研究一个小知识点,最终聚沙成塔,这就是我们的springboot ...