How to (cross) compile PCL with TX1 ?

I’m looking for compiling Point Cloud Library 1.8 from source on the Tegra TX1 for CUDA support but I encounter some problems due to lack of memory when building onboard … Has anyone got it working without trouble ? with cross compilation perhaps ?


You could put an SD card in or SATA drive and partition for swap…mounting and unmounting swap (swapon and swapoff) are the same on a Jetson as any other Linux. Something like gdisk could be used to create the partitions, then “mkswap”.

FYI, cross compiling a user space app would imply needing not just the cross tool chain, but also a sysroot (which can complicate life, though using a clone of the actual Jetson can help). I think the default kernel on a shipping Jetson does not enable swap, but perhaps newer kernels do…and if not it isn’t too bad to compile a new kernel. Which L4T version are you running? Newest is R24.2.1.

NOTE: You can run swapon naming a swap partition, and if the kernel does not support this, it will say something similar to “operation not supported”. This would be an indication to flash a newer L4T if possible, and if already newest, only then would you need to build a kernel.

Ok I will try that, I’m running the latest L4T R24.2.1. The “swapon” command give me anything is it normal ?

“swapon” is a standard part of all Linux distributions. The kernel must have swap configured though. Something like htop will nicely show memory use and indicate swap as well if it is available (meaning if a properly partitioned and formatted swap device was mounted via swapon).