• 运行pcl程序时,显示/usr/bin/ld: cannot find -lvtkproj4和No rule to make target '/usr/lib/x86_64-linux-gnu/libproj.so'


    编译报错

    make[2]: *** No rule to make target '/usr/lib/x86_64-linux-gnu/libproj.so', needed by 'joinMap'.  Stop.
    
    CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/joinMap.dir/all' failed
    make[1]: *** [CMakeFiles/joinMap.dir/all] Error 2
    Makefile:83: recipe for target 'all' failed
    make: *** [all] Error 2
    *** Failure: Exit code 2 ***

    解决方法,执行:
    sudo apt-get install libproj-dev

    当使用pcl库时编译出现如下错误

    -- Build files have been written to: /home/wd/code/slambook-master/ch5/joinMap/build
    [ 50%] Linking CXX executable joinMap
    /usr/bin/ld: cannot find -lvtkproj4
    collect2: error: ld returned 1 exit status
    CMakeFiles/joinMap.dir/build.make:349: recipe for target 'joinMap' failed
    make[2]: *** [joinMap] Error 1
    CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/joinMap.dir/all' failed
    make[1]: *** [CMakeFiles/joinMap.dir/all] Error 2
    Makefile:83: recipe for target 'all' failed
    make: *** [all] Error 2
    *** Failure: Exit code 2 ***

    由报错内容看,感觉像是缺少lvtkproj4,因为:cannot find -lvtkproj4 本来要安装一下看看,好在上方博客说的第二个问题就是此问题,大概原因是需要在cmakelist中加一条指令,对pcl进行修复。照做,更改cmakelist,在add_executable语句前面加上:

    list(REMOVE_ITEM PCL_LIBRARIES “vtkproj4”)

    语句内容上看是将PCL_LIBRARIES库列表中的”vtkproj4”移除掉。

  • 相关阅读:
    JAVA——俄罗斯方块
    JAVA——简单科学计算器设计
    标准9*9数独破解器
    k短路算法(A*)
    洛谷2939 分层图模板
    PCA算法
    coursera-斯坦福-机器学习-吴恩达-笔记week4
    coursera-斯坦福-机器学习-吴恩达-笔记week3
    coursera-斯坦福-机器学习-吴恩达-笔记week2
    coursera-斯坦福-机器学习-吴恩达-笔记week1
  • 原文地址:https://www.cnblogs.com/excellentlhw/p/11851037.html
Copyright © 2020-2023  润新知