0

I am using apt::libpcl-dev with xmake.

# xmake.lua
add_rules("mode.debug","mode.release")

add_requires("apt::libpcl-dev", {configs = {vtk=true, system = true}})

set_project("homework1")

set_languages("c++20")
set_toolchains("gcc")

target("1_reading_pcd")
    set_rundir("1_reading_pcd")
    set_kind("binary")
    add_packages("apt::libpcl-dev")
    if is_plat("linux") then
        add_syslinks("X11", "Xext", "Xft", "Xrender","Xcursor")
        add_syslinks("gomp")
    end
    add_files("1_reading_pcd/*.cpp")

The error translated to English is belowing with excuting xmake. But I can confirm I have installed libpcl-dev.

 *  Tasking: xmake 

[ 47%]: linking.release 1_reading_pcd
error: /usr/bin/ld: Can't find -lpcl_in_hand_scanner: No such file or directory.
/usr/bin/ld: Can't find -lpcl_modeler: No such file or directory.
/usr/bin/ld: Can't find -lpcl_point_cloud_editor: No such file or directory.
collect2: error: ld returned 1 exit status

And I try to find these lib whether they exist in my system. Belowing is return, and exactly they don't exist.

$ dpkg -l | grep pcl 
ii  libpcl-apps1.15:amd64                               1.15.0+dfsg-2                        amd64        Point Cloud Library - apps library
ii  libpcl-common1.15:amd64                             1.15.0+dfsg-2                        amd64        Point Cloud Library - common library
ii  libpcl-conversions-dev:amd64                        1.7.5-2+b2                           amd64        Robot OS library to convert from/to PCL data types
ii  libpcl-dev                                          1.15.0+dfsg-2                        amd64        Point Cloud Library - development files
ii  libpcl-doc                                          1.15.0+dfsg-2                        all          Point Cloud Library - documentation
ii  libpcl-features1.15:amd64                           1.15.0+dfsg-2                        amd64        Point Cloud Library - features library
ii  libpcl-filters1.15:amd64                            1.15.0+dfsg-2                        amd64        Point Cloud Library - filters library
ii  libpcl-io1.15:amd64                                 1.15.0+dfsg-2                        amd64        Point Cloud Library - I/O library
ii  libpcl-kdtree1.15:amd64                             1.15.0+dfsg-2                        amd64        Point Cloud Library - kdtree library
ii  libpcl-keypoints1.15:amd64                          1.15.0+dfsg-2                        amd64        Point Cloud Library - keypoints library
ii  libpcl-ml1.15:amd64                                 1.15.0+dfsg-2                        amd64        Point Cloud Library - ml library
ii  libpcl-msgs-dev                                     0.3.0-4                              amd64        C/C++ headers for PCL-related Robot OS Messages
ii  libpcl-octree1.15:amd64                             1.15.0+dfsg-2                        amd64        Point Cloud Library - octree library
ii  libpcl-outofcore1.15:amd64                          1.15.0+dfsg-2                        amd64        Point Cloud Library - outofcore library
ii  libpcl-people1.15:amd64                             1.15.0+dfsg-2                        amd64        Point Cloud Library - people library
ii  libpcl-recognition1.15:amd64                        1.15.0+dfsg-2                        amd64        Point Cloud Library - recognition library
ii  libpcl-registration1.15:amd64                       1.15.0+dfsg-2                        amd64        Point Cloud Library - registration library
ii  libpcl-ros-dev:amd64                                1.7.5-2+b2                           amd64        Bridge between Robot OS library (ROS) and PCL - development headers
ii  libpcl-ros-features0t64:amd64                       1.7.5-2+b2                           amd64        Bridge between Robot OS library (ROS) and PCL - features library
ii  libpcl-ros-filter1t64:amd64                         1.7.5-2+b2                           amd64        Bridge between Robot OS library (ROS) and PCL - filter library
ii  libpcl-ros-filters0t64:amd64                        1.7.5-2+b2                           amd64        Bridge between Robot OS library (ROS) and PCL - filters library
ii  libpcl-ros-io0t64:amd64                             1.7.5-2+b2                           amd64        Bridge between Robot OS library (ROS) and PCL - io library
ii  libpcl-ros-segmentation0t64:amd64                   1.7.5-2+b2                           amd64        Bridge between Robot OS library (ROS) and PCL - segmentation library
ii  libpcl-ros-surface0t64:amd64                        1.7.5-2+b2                           amd64        Bridge between Robot OS library (ROS) and PCL - surface library
ii  libpcl-ros-tf1t64:amd64                             1.7.5-2+b2                           amd64        Bridge between Robot OS library (ROS) and PCL - tf library
ii  libpcl-sample-consensus1.15:amd64                   1.15.0+dfsg-2                        amd64        Point Cloud Library - sample consensus library
ii  libpcl-search1.15:amd64                             1.15.0+dfsg-2                        amd64        Point Cloud Library - search library
ii  libpcl-segmentation1.15:amd64                       1.15.0+dfsg-2                        amd64        Point Cloud Library - segmentation library
ii  libpcl-stereo1.15:amd64                             1.15.0+dfsg-2                        amd64        Point Cloud Library - stereo library
ii  libpcl-surface1.15:amd64                            1.15.0+dfsg-2                        amd64        Point Cloud Library - surface library
ii  libpcl-tracking1.15:amd64                           1.15.0+dfsg-2                        amd64        Point Cloud Library - tracking library
ii  libpcl-visualization1.15:amd64                      1.15.0+dfsg-2                        amd64        Point Cloud Library - visualization library
ii  pcl-tools                                           1.15.0+dfsg-2                        amd64        Point Cloud Library - point cloud processing tools

And I also tried to using xrepo to download pcl source code, compile and install (using pcl to replace apt::libpcl-dev in xmake.lua). It actually works.

I expecting that after downloading libpcl-dev system should have these libraries(including libpcl_in_hand_scanner.so, libpcl_modeler.so and libpcl_point_cloud_editor.so), don't let user download source code to compile(although it is a good habit)

0

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.