vlp_grabber on Jetson TX2

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

vlp_grabber on Jetson TX2

nomoore
I'm currently trying to get my code to run on a Jetson TX2 and cmake is able
to locate all the PCL Libraries except the vlp grabber. Even the hdl grabber
is being found. I followed the install instructions for Ubuntu found at:
http://pointclouds.org/downloads/linux.html

My cmake file looks like:

project(project_name)
cmake_minimum_required(VERSION 2.8)
find_package(PCL 1.7 REQUIRED COMPONENTS common io)
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})
aux_source_directory(. ${SRC_LIST})
add_executable(${PROJECT_NAME} ${SRC_LIST})
target_link_libraries(${PROJECT_NAME} -lboost_system ${PCL_COMMON_LIBRARIES}
${PCL_IO_LIBRARIES} ${PCL_LIBRARIES})

I realize my target link libraries are redundant. I was just trying to
figure out what the problem might be, so I tried multiple things. I would
appreciate any suggestions on how to approach this. Is there a problem with
my cmake file? Did I make a mistake installing the libraries? Am I
overlooking something obvious?




--
Sent from: http://www.pcl-users.org/
_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: vlp_grabber on Jetson TX2

Bart Verhagen
Hi Nolan,

In order to be able to further help you out, could you elaborate on at least the following:
- What is your exact error message (including the full cmake output of a clean configuration step)?
- What is your current setup for building it? You mention you are building for a Jetson TX2, which is an ARM device. Are you building this on the target itself or are you trying to cross-compile?

Note that it is considered bad practice within the cmake community to use aux_source_directory for collecting your source file, although based on your current problem description, it is probably not related.

Kindest Regards,

Bart Verhagen

On Mon, May 7, 2018 at 8:56 PM, nomoore <[hidden email]> wrote:
I'm currently trying to get my code to run on a Jetson TX2 and cmake is able
to locate all the PCL Libraries except the vlp grabber. Even the hdl grabber
is being found. I followed the install instructions for Ubuntu found at:
http://pointclouds.org/downloads/linux.html

My cmake file looks like:

project(project_name)
cmake_minimum_required(VERSION 2.8)
find_package(PCL 1.7 REQUIRED COMPONENTS common io)
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})
aux_source_directory(. ${SRC_LIST})
add_executable(${PROJECT_NAME} ${SRC_LIST})
target_link_libraries(${PROJECT_NAME} -lboost_system ${PCL_COMMON_LIBRARIES}
${PCL_IO_LIBRARIES} ${PCL_LIBRARIES})

I realize my target link libraries are redundant. I was just trying to
figure out what the problem might be, so I tried multiple things. I would
appreciate any suggestions on how to approach this. Is there a problem with
my cmake file? Did I make a mistake installing the libraries? Am I
overlooking something obvious?




--
Sent from: http://www.pcl-users.org/
_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users


_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: vlp_grabber on Jetson TX2

nomoore
Bart,

I am compiling on the target itself. I'm programming in QT creator,
obviously in c++.

My code says:
#include <pcl/io/vlp_grabber.h>

Thus, the exact error message says:
pcl/io/vlp_grabber.h: No such file or directory

But if I use:
#include <pcl/io/hdl_grabber.h>

I get no errors. The only problem with that is I need the vlp grabber and
not the hdl grabber.

I didn't know aux_source_directory was bad practice. Thank you for telling
me. Would you also have a suggestion for an alternative? I am still very new
to cmake and appreciate learning from more experienced people. Do you know
of a good source where I could learn cmake better?

Thank you for your quick response. It is much appreciated.

God bless,
Nolan




--
Sent from: http://www.pcl-users.org/
_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: vlp_grabber on Jetson TX2

Bart Verhagen
Hi Nolan,

From your Cmake file, it seems that you are using PCL version 1.7.x. However, as can be verified on PCL's Github, support for the Velodyne VLP Grabber was introduced in commit ff4380aaa71e4f71cfb14745dd57b3cbf4769fbc, which was first released in PCL version 1.8.0.
So if you really need support for the VLP Grabber, the easiest method is to use PCL version 1.8.0 or up. This version of PCL is included in Ubuntu Zesty and up. Note that Ubuntu Zesty is no longer supported, so if possible, use Ubuntu Artful or later.

If upgrading Ubuntu is not an option, you could either:
- find an up to date PPA for your Ubuntu distribution. Given the fact that you are compiling for an ARM Cortex-A57, this may be hard to find and not be fully optimized for your specific architecture (ARMv8-A 64 bit).
- build PCL from source. Thanks to the wonderful work of the PCL developers, this is actually not that hard. More information can be found here: http://www.pointclouds.org/documentation/tutorials/compiling_pcl_posix.php.

As for the aux_source_directory: you can find more about it in its cmake documentation: https://cmake.org/cmake/help/v3.0/command/aux_source_directory.html. Unfortunately, the 'official' solution is to exhaustively list all your source files when setting the SRC_LIST variable. If you are not experienced with Cmake, my recommendation is to definitely follow this guideline.

Regards,

Bart Verhagen

On Tue, May 8, 2018 at 4:36 PM, nomoore <[hidden email]> wrote:
Bart,

I am compiling on the target itself. I'm programming in QT creator,
obviously in c++.

My code says:
#include <pcl/io/vlp_grabber.h>

Thus, the exact error message says:
pcl/io/vlp_grabber.h: No such file or directory

But if I use:
#include <pcl/io/hdl_grabber.h>

I get no errors. The only problem with that is I need the vlp grabber and
not the hdl grabber.

I didn't know aux_source_directory was bad practice. Thank you for telling
me. Would you also have a suggestion for an alternative? I am still very new
to cmake and appreciate learning from more experienced people. Do you know
of a good source where I could learn cmake better?

Thank you for your quick response. It is much appreciated.

God bless,
Nolan


_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: vlp_grabber on Jetson TX2

nomoore
Bart,

I overlooked the version number in the cmake file. That fixed it.

Thank you very much,

Nolan









--
Sent from: http://www.pcl-users.org/
_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users