安裝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 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 [依賴項名字]就可以

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM