• pcl 1.7.2 make errors


    A dependency was removed accidentally

    Several weeks ago, a dependency was removed by apt remove libc6. After I reinstalled ROS, everything seems to work well.

    But when compiling PCL, some share lib may be removed with the previous dependency.

    So error occured:

    ~/Downloads/nozuonodie/pcl-pcl-1.7.2/build$ make -j4
    [  1%] Built target pcl_pcd_convert_NaN_nan
    [  1%] Built target pcl_io_ply
    [  1%] Built target pcl_octree
    [  1%] Built target pcl_people
    [  2%] Built target pcl_plyheader
    [  5%] Built target pcl_common
    [  5%] Built target pcl_ply2raw
    [  6%] Built target pcl_ply2obj
    [  7%] Built target pcl_ply2ply
    [  7%] Built target pcl_kdtree
    [  8%] Built target pcl_search
    [ 11%] Built target pcl_sample_consensus
    make[2]: *** No rule to make target '/usr/lib/x86_64-linux-gnu/libpcap.so', needed by 'lib/libpcl_io.so.1.7.2'.  Stop.
    CMakeFiles/Makefile2:402: recipe for target 'io/CMakeFiles/pcl_io.dir/all' failed
    make[1]: *** [io/CMakeFiles/pcl_io.dir/all] Error 2
    make[1]: *** Waiting for unfinished jobs....
    [ 16%] Built target pcl_surface
    [ 23%] Built target pcl_filters
    Makefile:160: recipe for target 'all' failed
    make: *** [all] Error 2
    

    Problem solved

    Since just some lib missing, it is easy to solve the problem by download the file to where they belong to.

    In my machine missing files

    ~$ locate libpcap
    /snap/core/8268/usr/lib/x86_64-linux-gnu/libpcap.so.0.8
    /snap/core/8268/usr/lib/x86_64-linux-gnu/libpcap.so.1.7.4
    /snap/core/8268/usr/share/doc/libpcap0.8
    /snap/core/8268/usr/share/doc/libpcap0.8/changelog.Debian.gz
    /snap/core/8268/usr/share/doc/libpcap0.8/copyright.gz
    /usr/lib/x86_64-linux-gnu/libpcap.so.0.8
    /usr/lib/x86_64-linux-gnu/libpcap.so.1.7.4
    /usr/share/doc/libpcap0.8
    /usr/share/doc/libpcap0.8/CREDITS.gz
    /usr/share/doc/libpcap0.8/README
    /usr/share/doc/libpcap0.8/README.Debian
    /usr/share/doc/libpcap0.8/changelog.Debian.gz
    /usr/share/doc/libpcap0.8/copyright
    /var/lib/dpkg/info/libpcap0.8:amd64.list
    /var/lib/dpkg/info/libpcap0.8:amd64.md5sums
    /var/lib/dpkg/info/libpcap0.8:amd64.shlibs
    /var/lib/dpkg/info/libpcap0.8:amd64.symbols
    /var/lib/dpkg/info/libpcap0.8:amd64.triggers
    

    In another usual computer

    ~$ locate libpcap
    /usr/lib/x86_64-linux-gnu/libpcap.a
    /usr/lib/x86_64-linux-gnu/libpcap.so
    /usr/lib/x86_64-linux-gnu/libpcap.so.0.8
    /usr/lib/x86_64-linux-gnu/libpcap.so.1.7.4
    /usr/share/doc/libpcap0.8
    /usr/share/doc/libpcap0.8-dev
    /usr/share/doc/libpcap0.8/CREDITS.gz
    /usr/share/doc/libpcap0.8/README
    /usr/share/doc/libpcap0.8/README.Debian
    /usr/share/doc/libpcap0.8/changelog.Debian.gz
    /usr/share/doc/libpcap0.8/copyright
    /usr/share/doc/libpcap0.8-dev/changelog.Debian.gz
    /usr/share/doc/libpcap0.8-dev/copyright
    /var/lib/dpkg/info/libpcap0.8-dev.list
    /var/lib/dpkg/info/libpcap0.8-dev.md5sums
    /var/lib/dpkg/info/libpcap0.8-dev.preinst
    /var/lib/dpkg/info/libpcap0.8:amd64.list
    /var/lib/dpkg/info/libpcap0.8:amd64.md5sums
    /var/lib/dpkg/info/libpcap0.8:amd64.shlibs
    /var/lib/dpkg/info/libpcap0.8:amd64.symbols
    /var/lib/dpkg/info/libpcap0.8:amd64.triggers
    

    Focus on the lib, which means we need is some file has .a or .so.

    /usr/lib/x86_64-linux-gnu/libpcap.a
    /usr/lib/x86_64-linux-gnu/libpcap.so
    

    Download the libpacp.a and libpcap.so. Copy them to the directory

    sudo cp ~/Downloads/libpcap.a /usr/lib/x86_64-linux-gnu/
    sudo cp ~/Downloads/libpcap.so /usr/lib/x86_64-linux-gnu/
    
  • 相关阅读:
    Google布隆过滤器与Redis布隆过滤器详解
    这个面试问题很难么 | 如何处理大数据中的数据倾斜
    阿里巴巴微服务架构演进
    快手HBase在千亿级用户特征数据分析中的应用与实践
    基于Kafka+Flink+Redis的电商大屏实时计算案例
    阿里云E-MapReduce产品探秘,快速构建可扩展的高性能大数据平台
    阿里云Spark Shuffle的优化
    Flink CheckPoint奇技淫巧 | 原理和在生产中的应用
    你需要的不是实时数仓 | 你需要的是一款合适且强大的OLAP数据库(上)
    你需要的不是实时数仓 | 你需要的是一款强大的OLAP数据库(下)
  • 原文地址:https://www.cnblogs.com/linweilin/p/12100570.html
Copyright © 2020-2023  润新知