Using Realsense SDK( with tag v2.17.1 ) + Isaac(2019.2) on Nano

Following the step (https://devtalk.nvidia.com/default/topic/1049671/sdk/using-realsense-isaac-with-nano/), it works well on my realsense device.

I note it will download realsense SDK from url = “https://developer.nvidia.com/isaac/download/third_party/librealsense-2-17-0-tar-gz” in third_party/packages.bzl.

If I want to use realsense SDK with tag v2.17.1 not v2.17.0(v2.17.0 is the demo on current latest SDK), it will get errors as follows (I only change 3 fields, sha256, strip_preifx, and url with the tag, v2.17.1 SDK, to make the downloading process runnable):

WARNING: /home/jsm/Downloads/isaac3/packages/viewers/BUILD:14:12: in srcs attribute of cc_binary rule //packages/viewers:libviewers_module.so: please do not import ‘//packages_x86_64/viewers:libviewers_module.so’ directly. You should either move the file to this package or depend on an appropriate rule there
INFO: Analysed target //apps/samples/realsense_camera:realsense_camera (74 packages loaded, 3937 targets configured).
INFO: Found 1 target…
ERROR: /home/jsm/.cache/bazel/_bazel_jsm/fa91f5e6c672159f1374070ba8938c7e/external/realsense/BUILD.bazel:20:1: Couldn’t build file external/realsense/_objs/realsense/rates_printer.pic.o: C++ compilation of rule ‘@realsense//:realsense’ failed (Exit 1) crosstool_wrapper_driver_is_not_gcc_host.py failed: error executing command external/toolchain/crosstool/scripts/crosstool_wrapper_driver_is_not_gcc_host.py -D_DEFAULT_SOURCE -U_FORTIFY_SOURCE -fstack-protector -Wall -Werror -B/usr/bin -Wunused-but-set-parameter … (remaining 144 argument(s) skipped)

Use --sandbox_debug to see verbose messages from the sandbox
external/realsense/src/proc/rates_printer.cpp: In member function ‘virtual rs2::frame librealsense::rates_printer::process_frame(const rs2::frame_source&, const rs2::frame&)’:
external/realsense/src/proc/rates_printer.cpp:17:18: error: ‘cout’ is not a member of ‘std’
std::cout << std::endl << “#### RS Frame Rate Printer ####” << std::endl;
^~~~
external/realsense/src/proc/rates_printer.cpp:17:18: note: suggested alternative: ‘count’
std::cout << std::endl << “#### RS Frame Rate Printer ####” << std::endl;
^~~~
count
external/realsense/src/proc/rates_printer.cpp: In member function ‘void librealsense::rates_printer::print()’:
external/realsense/src/proc/rates_printer.cpp:36:14: error: ‘cout’ is not a member of ‘std’
std::cout << std::fixed;
^~~~
external/realsense/src/proc/rates_printer.cpp:36:14: note: suggested alternative: ‘count’
std::cout << std::fixed;
^~~~
count
external/realsense/src/proc/rates_printer.cpp:37:14: error: ‘cout’ is not a member of ‘std’
std::cout << std::setprecision(1);
^~~~
external/realsense/src/proc/rates_printer.cpp:37:14: note: suggested alternative: ‘count’
std::cout << std::setprecision(1);
^~~~
count
external/realsense/src/proc/rates_printer.cpp:38:14: error: ‘cout’ is not a member of ‘std’
std::cout << “\r”;
^~~~
external/realsense/src/proc/rates_printer.cpp:38:14: note: suggested alternative: ‘count’
std::cout << “\r”;
^~~~
count
external/realsense/src/proc/rates_printer.cpp:42:18: error: ‘cout’ is not a member of ‘std’
std::cout << sp.stream_name() << “[” << sp.stream_index() << "]: " <<
^~~~
external/realsense/src/proc/rates_printer.cpp:42:18: note: suggested alternative: ‘count’
std::cout << sp.stream_name() << “[” << sp.stream_index() << "]: " <<
^~~~
count
INFO: From Compiling external/realsense/src/linux/backend-v4l2.cpp:
In file included from external/realsense/src/linux/backend-v4l2.cpp:6:0:
external/realsense/src/linux/backend-v4l2.h:54:111: note: #pragma message:
Librealsense notification: V4L2_META_FMT_UVC was not defined, adding metadata constructs
#pragma message ( “\nLibrealsense notification: V4L2_META_FMT_UVC was not defined, adding metadata constructs”)
^
Target //apps/samples/realsense_camera:realsense_camera failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 2514.976s, Critical Path: 87.19s, Remote (0.00% of the time): [queue: 0.00%, setup: 0.00%, process: 0.00%]
INFO: 1148 processes: 1112 linux-sandbox, 36 local.
FAILED: Build did NOT complete successfully

I also check the one-line change, #include , removed from rates_printer.h in realsense SDK v2.17.1.
( gitk src/proc/rates_printer.h will show it in realsense SDK with the tag, v2.17.1)

#include “synthetic-stream.h”
#include

  • #include // removing it
    #include

It resulted in the above error. i.e.,
external/realsense/src/proc/rates_printer.cpp:17:18: error: ‘cout’ is not a member of ‘std’
std::cout << std::endl << “#### RS Frame Rate Printer ####” << std::endl;

How do I fix it with such change in isaac/bazel? (std::cout and std::endl is included in #include )

(Such a change will not impact the SDK, but it will make issac failure)

Have you been able to fix this ?

sure. It’s just an easy fix.