IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    Caffe系统搭建(常见问题解决办法和ubuntu使用中遇到问题解决方法)——持续更新 - Fight boy

    Fight boy发表于 2015-09-22 03:39:00
    love 0

    Caffe编译问题及解决方案汇总:

     在编译caffe代码时,之前的各种错误会显现出来,这时候会出现各种各样的问题:

    问题1:

    Error: 'make all' 'make test'
    .build_release/lib/libcaffe.so: undefined reference to cv::imread(cv::String const&, int)'
    .build_release/lib/libcaffe.so: undefined reference tocv::imencode(cv::String const&, cv::_InputArray const&, std::vector >&, std::vector > const&)'

    原因:caffe代码中并没有build文件夹,需要新建build文件夹之后再进行编译:

    cd caffe-master  #打开caffe所在文件夹
    cp Makefile.config.example Makefile.config #change setting in Makefile.config
    mkdir build
    cd build
    cmake ..
    make all -j8  #在build文件夹下进行编译
    cd ..
    make test -j8
    make runtest -j8  #使用CPU多核同时进行编译

     

    问题2:

    CMake Error at cuda_compile_generated_lrn_layer.cu.o.cmake:206 (message)

    在成功安装cuda之后,由于路径设置问题,或者路径冲突会产生以下错误,解决方法:

    1.在caffe文件夹下,通过下面该命令查看配置路径:

    sudo find / -name nvcc

    2.通过下面命令查看是否cuda路径冲突:

    $PATH

    如果显示结果有两个cuda环境变量,那么需要移除旧的路径,更新PATH。

    3.重新设置cuda环境变量

    在/etc/profile中添加CUDA环境变量  

    PATH=/usr/local/cuda/bin:$PATH
    export PATH

    然后注销或重启(因为注销或重启之后PATH会从 ~/.bash_profile文件中重新读取)

     

    问题3:cuDNN使用

    安装cudnn-6.5-linux-x64-v2.tgz之后,并在Makefile.config中设置

    USE_CUDNN := 1

    打开CUDNN加速,但是在使用命令

    make test -j8

    对test进行编译时出现问题,至今未解决。

     

     

    Linux一些常用命令记录及解释:

    1.程序安装

      本地安装 命令格式  

      sudo dpkg -i softname.deb

      其中dpkg为Debian Package的缩写,dpkg常用命令有: -i 安装 ;-r 卸载

      dpkg命令是一个底层的安装工具,apt是dpkg上层工具,用于从远程获取软件包以及处理复杂的软件包之间的关系。

      apt常用的用法,apt-get后面接install 或remove对软件进行安装和卸载

      apt-get install <package>

     

    2.设置系统root密码

      如果使用光盘安装Ubuntu,按照安装向导来进行帐号、分区等设置,而在这个安装向导程序中没有提示进行root密码的设置,所以在 Ubuntu安装好后需要手动设置root密码。而如果是跳过安装向导,点击桌面上的Install图标来进行安装的话,在安装过程中则会提示设置 root密码。当然,如果需要修改root密码也可以使用以下方法:打开终端,在终端中输入命令:

    sudo passwd root

    接下来,按照提示一步步设置系统的root密码。

    [sudo] password for jjxiaoyan:
    输入新的 UNIX 口令:
    重新输入新的 UNIX 口令:
    passwd:已成功更新密码
    口令:

     

    3.删除文件夹和文件

    在ubuntu里面有些文件夹通过右键方式无法删除,这时候就需要使用命令来进行删除。

    删除文件:

    cd /usr/local/src #打开文件所在位置
    sudo rm ./file-name  #删除文件

    删除文件夹:

    cd /usr/local/src
    sudo rm -r ./folder-name

     3. 使用命令更改文件或文件夹名

    sudo mv 旧文件名 新文件名

    4. 使用显示内核版本

    uname a

     

     

     

    Ubuntu14.04使用中的一些问题及解决方法:

    1.内核出现问题时解决方法

    该问题困扰我很久,因为dpkg时程序安装命令,该命令出问题导致新的软件不能安装,非常烦,查了很多资料,终于找到解决方法。

    错误提示:  dpkg: 在处理时有错误发生:  linux-image-extra-3.19.0-28-generic 

                  linux-image-3.19.0-28-generic

    解决方法:原帖地址(点我) 直接12楼

    解决思路:将dpkg包中的信息先备份,在新的info信息复制到文件夹中更新内核

    sudo mv /var/lib/dpkg/info /var/lib/dpkg/info_old   //现将info文件夹更名
    sudo mkdir /var/lib/dpkg/info               //再新建一个新的info文件夹
    sudo apt-get update                      //更新源
    sudo apt-get -f install                    
    sudo mv /var/lib/dpkg/info/* /var/lib/dpkg/info_old   //将info中文件全部移到info_old文件夹下
    sudo rm -rf /var/lib/dpkg/info                //把自己新建的info文件夹删掉
    sudo mv /var/lib/dpkg/info_old /var/lib/dpkg/info     //把以前的info文件夹重新改回名字

    通过上述命令可以解决内核移除失败,更新问题。

     

    2.Ubuntu14.04 无法识别硬盘exfat分区

    为什么使用exfat格式呢?主要有以下两种原因:

    1、三大主流操作系统(Linux、Mac、Windows)都支持exfat格式。

    2、exfat支持大于4G的文件。

    在ubuntu下,由于版权的原因(据说),默认不支持exfat格式的u盘,不过可以很方便就能添加对exfat的支持:

    1、对于ubuntu 14.04版本,直接运行下面的命令就可以了:  

    sudo apt-get install exfat-utils

    安装完之后重启生效。(如果不重启不行,则重启)

     


    本文链接:Caffe系统搭建(常见问题解决办法和ubuntu使用中遇到问题解决方法)——持续更新,转载请注明。



沪ICP备19023445号-2号
友情链接