美文网首页
error: argument of type "const v

error: argument of type "const v

作者: nowherespyfly | 来源:发表于2018-10-26 00:07 被阅读0次

    今天在编译caffe2时,遇到了以下问题:

    "/usr/lib/gcc/x86_64-linux-gnu/5/include/avx512vlintrin.h(10907): error: argument of type "const void *" is incompatible with parameter of type "const int *"


    输入gcc -v查看gcc版本,发现是gcc 5.5.0.网上有人说是gcc版本问题,因此就下载安装了gcc5.4.0

    安装gcc5.4.0

    1.下载gcc源码

    下载地址
    选择gcc-5.4.0.tar.gz

    2. 进入下载目录并解压

    sudo tar -zxvf gcc-5.4.0.tar.gz

    3. 下载编译所需依赖项

    cd gcc-5.4.0
    sudo ./contrib/download_prerequisites
    cd ..

    4. 建立编译输出目录

    mkdir gcc-build-5.4.0

    5. 生成makefile文件

    cd gcc-build-5.4.0
    sudo ../gcc-5.4.0/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib

    6. 使用8核进行编译.此过程所需时间较长,最好不要中断

    sudo make -j8

    7. 安装

    sudo make install

    再次检查gcc和g++版本,发现已经切换为5.4.0了
    然而,再次编译caffe2,依然会报错.
    检查gcc5.4.0安装位置,发现是在/usr/local/bin下;但是在编译caffe2时,gcc位置依然为/usr/bin.因此,还需要设置gcc的默认版本

    使用update-alternatives设置gcc默认版本

    update-alternatives是linux系统自带的专门维护系统命令链接符的工具,通过它可以很方便的设置系统默认使用哪个命令、哪个软件版本.其常用命令有:

    • --config <name>参数可以查看列出 <name> 替换组中的可选项,并就使用其中哪一个,征询用户的意见
    • --install <link> <name> <path> <priority>[--slave <link> <name> <path>] 在系统中加入一组替换项,并且设置其优先级
    • --remove <name> <path> 从 <name> 替换组中去除 <path> 项.

    1. 查看gcc链接指向

    sudo update-alternatives --config gcc

    得到


    链接组只有一个候选链接,gcc-5.
    输入gcc-5 -v查看版本,发现还是gcc5.5.0.

    2. 将/usr/local/bin/gcc加入gcc链接组

    设置/usr/local/bin下的gcc优先级为100,将/usr/bin/gcc指向/usr/local/bin/gcc

    sudo update-alternatives --install /usr/bin/gcc gcc /usr/local/bin/gcc 100

    再次输入sudo update-alternatives --config gcc,可以看到,此时已经有两个候选链接,并且/usr/local/bin/gcc优先级更高


    g++不需要再次设置了.设置完成gcc后,还需要设置c++

    sudo update-alternatives --install /usr/bin/c++ c++ /usr/local/bin/c++ 100

    完成

    ps. 结尾致谢灰叽大佬@不会积,从来不怕头大,哪怕头大也可以依旧顶风前行,总是能在我无比绝望甚至想要重装系统的时候找到解决的办法.

    相关文章

      网友评论

          本文标题:error: argument of type "const v

          本文链接:https://www.haomeiwen.com/subject/ffyhtqtx.html