NVIDIA-ISAAC-ROS / isaac_ros_compression

NVIDIA-accelerated data compression
https://developer.nvidia.com/isaac-ros-gems
Apache License 2.0
53 stars 7 forks source link

Build fails on nvcr.io/nvidia/l4t-base:r36.2.0 docker container for release-2.1 #13

Open pragun opened 3 months ago

pragun commented 3 months ago

I see an AMENT_IGNORE file in gxf, which presumably is to ignore building the gxf libraries, but I don't see libgxf_video_encoder_extension.so & libgxf_video_decoder_extension.so in isaac_ros_gxf, which makes me believe that they do need to be built for isaac_ros_compression to work, however building fails with following:

Starting >>> isaac_ros_common
Starting >>> negotiated_interfaces
Starting >>> isaac_ros_test
Starting >>> magic_enum
Finished <<< isaac_ros_common [0.88s]                                                                                                                               
Starting >>> isaac_ros_gxf
Finished <<< magic_enum [1.17s]                                                                                                                                   
Starting >>> isaac_ros_nitros_interfaces
Finished <<< isaac_ros_gxf [0.42s]
Finished <<< isaac_ros_test [1.60s]                                                                                                             
Finished <<< negotiated_interfaces [1.94s]                                                                               
Starting >>> negotiated
Finished <<< isaac_ros_nitros_interfaces [1.11s]                                                              
Finished <<< negotiated [0.47s]                   
Starting >>> isaac_ros_nitros
Finished <<< isaac_ros_nitros [0.48s]                      
Starting >>> isaac_ros_nitros_compressed_image_type
Starting >>> isaac_ros_nitros_image_type
Finished <<< isaac_ros_nitros_compressed_image_type [0.43s]                                                                                  
Finished <<< isaac_ros_nitros_image_type [0.45s]
Starting >>> isaac_ros_h264_encoder
[Processing: isaac_ros_h264_encoder]                               
--- stderr: isaac_ros_h264_encoder                                 
In file included from /mithril_workspace/src/isaac_ros_compression/isaac_ros_h264_encoder/gxf/codec/video_encoder/videoencoder_utils.hpp:45,
                 from /mithril_workspace/src/isaac_ros_compression/isaac_ros_h264_encoder/gxf/codec/video_encoder/videoencoder_request.cpp:24:
/mithril_workspace/src/isaac_ros_compression/isaac_ros_h264_encoder/gxf/codec/libv4l2/include/linux/v4l2_nv_extensions.h:183:8: error: redefinition of ‘struct v4l2_ctrl_h264_sps’
  183 | struct v4l2_ctrl_h264_sps {
      |        ^~~~~~~~~~~~~~~~~~
In file included from /usr/include/linux/videodev2.h:65,
                 from /mithril_workspace/src/isaac_ros_compression/isaac_ros_h264_encoder/gxf/codec/video_encoder/videoencoder_utils.hpp:23,
                 from /mithril_workspace/src/isaac_ros_compression/isaac_ros_h264_encoder/gxf/codec/video_encoder/videoencoder_request.cpp:24:
/usr/include/linux/v4l2-controls.h:1306:8: note: previous definition of ‘struct v4l2_ctrl_h264_sps’
 1306 | struct v4l2_ctrl_h264_sps {
      |        ^~~~~~~~~~~~~~~~~~
In file included from /mithril_workspace/src/isaac_ros_compression/isaac_ros_h264_encoder/gxf/codec/video_encoder/videoencoder_utils.hpp:45,
                 from /mithril_workspace/src/isaac_ros_compression/isaac_ros_h264_encoder/gxf/codec/video_encoder/videoencoder_request.cpp:24:
/mithril_workspace/src/isaac_ros_compression/isaac_ros_h264_encoder/gxf/codec/libv4l2/include/linux/v4l2_nv_extensions.h:212:8: error: redefinition of ‘struct v4l2_ctrl_h264_pps’
  212 | struct v4l2_ctrl_h264_pps {
      |        ^~~~~~~~~~~~~~~~~~
In file included from /usr/include/linux/videodev2.h:65,
                 from /mithril_workspace/src/isaac_ros_compression/isaac_ros_h264_encoder/gxf/codec/video_encoder/videoencoder_utils.hpp:23,
                 from /mithril_workspace/src/isaac_ros_compression/isaac_ros_h264_encoder/gxf/codec/video_encoder/videoencoder_request.cpp:24:
/usr/include/linux/v4l2-controls.h:1362:8: note: previous definition of ‘struct v4l2_ctrl_h264_pps’
 1362 | struct v4l2_ctrl_h264_pps {
      |        ^~~~~~~~~~~~~~~~~~