NVIDIA-ISAAC-ROS / isaac_ros_image_pipeline

NVIDIA-accelerated ROS2 packages for camera image processing.
https://developer.nvidia.com/isaac-ros-gems
Apache License 2.0
112 stars 19 forks source link

Error during colcon building of "isaac_ros_image_proc" #24

Closed MaxBertus closed 1 year ago

MaxBertus commented 1 year ago

Hi everyone,

I'm trying to build the package _isaac_ros_imageproc through colcon, inside the docker container of _isaac_roscommon on Jetson Nano.

I have installed CUDA 12.0 and vpi2 (2.1.6) following with these guides (cuda and vpi).

I obtain the following error:

/usr/bin/ld: warning: libnvsocsys.so, needed by /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libnvvic.so, needed by /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libnvrm_mem.so, needed by /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libnvrm_host1x.so, needed by /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libnvrm_surface.so, needed by /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libnvpvaintf.so, needed by /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libnvscibuf.so, needed by /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0, not found (try using -rpath or -rpath-link)
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaQueueDestroy'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaContextDestroy'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaProgramStatusQuery'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaMemAlloc'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvOsDebugPrintStr'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvVicInitResult'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvMediaIOFSTImageRegister'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaProgramSetDMADescriptors'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaQueueCreateCUDAWrapper'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaSetVPUPrintBufferSize'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvMediaIOFAGetVersion'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaProgramSetDMAChannels'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvVicClose'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaMemFillNvSciBufAttrs'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaExecutableGetSymbolMemHandleTable'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaMemImportFromHostPtr'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaContextCreateCUDAWrapper'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaMemImportFromNvSciBuf'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvVicGeotrans'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvVicCompose'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `NvSciBufAttrListGetAttrs'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaFenceFillFromNvSciSyncFence'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvMediaIOFAProcessFrame'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaQueueSubmitV2'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvVicOpen'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaProgramCreate'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaSyncObjDestroy'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaFenceSynchronizeWithConfig'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvMediaIOFAInit'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvMediaIOFADestroy'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaGetCharacteristics'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvVicUnpin'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvTegraSysDeInit'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaNvSciSyncFenceFillFromPvaFence'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvMediaIOFAImageRegister'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaProgramSetHWSequencerBin'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvVicGetDefaultAttributes'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaMemGetHostPtr'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaMemImportFromCudaDevicePtr'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvMediaIOFSTImageUnRegister'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvVicPin'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaFillNvSciSyncAttrList'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaSyncObjImportFromNvSciSync'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvMediaIOFAImageUnRegister'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaFenceGetTimeStamp'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvVicGetCapabilities'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvMediaIOFACreate'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaProgramDestroy'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaContextCreate'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvTegraSysGetChipId'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvMediaLDCCreateNew'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaReadVPUPrintBuffer'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaMemDestroy'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaExecutableCreate'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvTegraSysInit'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaProgramSetPointerValue'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvVicInitGeotransParameters'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaExecutableDestroy'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaQueueCreate'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `NvSciBufObjGetAttrList'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaSyncObjCreate'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaProgramInitDMAParams'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/libnvvpi.so.2.1.6: undefined reference to `NvVicInitComposeParameters'
/usr/bin/ld: /opt/nvidia/vpi2/lib/aarch64-linux-gnu/priv/libcupva_host.so.2.0: undefined reference to `PvaProgramSetParameterValue'
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/isaac_ros_image_proc.dir/build.make:297: isaac_ros_image_proc] Error 1
make[1]: *** [CMakeFiles/Makefile2:255: CMakeFiles/isaac_ros_image_proc.dir/all] Error 2
make: *** [Makefile:146: all] Error 2

Could you please suggest me any solution?

hemalshahNV commented 1 year ago

Isaac ROS is not officially supported on a Jetson Nano (only supports up to Jetpack 4.x, need Jetpck 5.0.2 for latest Isaac ROS packages) and not tested on CUDA 12 yet. What version of Jetpack are you running here, by the way?

MaxBertus commented 1 year ago

Thank you for your answer! I'm running native Jetpack 4.6.3 [L4T 32.7.3]. So, could you please tell me how can I run the complete "isaac_ros_apriltag" pipeline with Jetson Nano? Which branch/commit have I to refer to?

hemalshahNV commented 1 year ago

The latest Isaac ROS release does not support Jetson Nano nor Jetpack 4.6.3. However, you could try an older release such as EA3 which might work on Jetson Nano.

MaxBertus commented 1 year ago

Ok, I will try! Thank you very much

ikhann commented 1 year ago

@MaxBertus Did you solve the issue? Please, could you help? I have the same errors.