CMake Error Debugging Request
- Dominant language
- C++
- Stars
- 39.5k
- Forks
- 10.9k
- Avg merge
- 6d 13h
- Merged PRs (30d)
- 1
Description
### Describe the issue
There seems to be some mismatch in the googletest library version. There were some issue coming the Nvidia package itself which I was able to correct but got stuck in errors mentioned below.
### Steps to reproduce the problem
I am trying to compile the https://github.com/NVIDIA-ISAAC-ROS/isaac_ros_image_pipeline in ubuntu 22.04 with ROS2 Humble.
### What version of GoogleTest are you using?
ros-humble-gtest-vendor is already the newest version (1.10.9006-1jammy.20240728.193421).
ros-humble-gmock-vendor is already the newest version (1.10.9006-1jammy.20240728.193706).
### What operating system and version are you using?
Ubuntu 22.04
### What compiler and version are you using?
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/11/lto-wrapper
Target: aarch64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04)
### What build system are you using?
cmake version 3.22.1
CMake suite maintained and supported by Kitware (kitware.com/cmake).
### Additional context
--- stderr: isaac_ros_image_proc
In file included from /usr/src/googletest/googlemock/include/gmock/gmock-spec-builders.h:75,
from /usr/src/googletest/googlemock/include/gmock/gmock-function-mocker.h:42,
from /usr/src/googletest/googlemock/include/gmock/gmock.h:61,
from /home/student/isaac_ros_ws/src/isaac_ros_image_pipeline/isaac_ros_image_proc/test/image_format_converter_node_test.cpp:18:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In member function ‘testing::internal::FieldsAreMatcher::operator testing::Matcher() const’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:3165:49: error: ‘IndexSequenceFor’ was not declared in this scope; did you mean ‘IndexSequence’?
3165 | new FieldsAreMatcherImpl>(
| ^~~~~~~~~~~~~~~~
| IndexSequence
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:3165:71: error: expected parameter pack before ‘...’
3165 | new FieldsAreMatcherImpl>(
| ^~~
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:3165:71: error: template argument 2 is invalid
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4291:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4291 | const internal::StringLike& str) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4291:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4291 | const internal::StringLike& str) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::StrEq(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4293:61: error: ‘str’ was not declared in this scope; did you mean ‘std’?
4293 | internal::StrEqualityMatcher(std::string(str), true, true));
| ^~~
| std
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4299:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4299 | const internal::StringLike& str) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4299:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4299 | const internal::StringLike& str) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::StrNe(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4301:61: error: ‘str’ was not declared in this scope; did you mean ‘std’?
4301 | internal::StrEqualityMatcher(std::string(str), false, true));
| ^~~
| std
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4307:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4307 | const internal::StringLike& str) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4307:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4307 | const internal::StringLike& str) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::StrCaseEq(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4309:61: error: ‘str’ was not declared in this scope; did you mean ‘std’?
4309 | internal::StrEqualityMatcher(std::string(str), true, false));
| ^~~
| std
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4315:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4315 | const internal::StringLike& str) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4315:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4315 | const internal::StringLike& str) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::StrCaseNe(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4317:19: error: ‘str’ was not declared in this scope; did you mean ‘std’?
4317 | std::string(str), false, false));
| ^~~
| std
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4324:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4324 | const internal::StringLike& substring) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4324:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4324 | const internal::StringLike& substring) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::HasSubstr(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4326:59: error: ‘substring’ was not declared in this scope; did you mean ‘IsSubstring’?
4326 | internal::HasSubstrMatcher(std::string(substring)));
| ^~~~~~~~~
| IsSubstring
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4332:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4332 | const internal::StringLike& prefix) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4332:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4332 | const internal::StringLike& prefix) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::StartsWith(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4334:60: error: ‘prefix’ was not declared in this scope; did you mean ‘profil’?
4334 | internal::StartsWithMatcher(std::string(prefix)));
| ^~~~~~
| profil
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4340:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4340 | const internal::StringLike& suffix) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4340:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4340 | const internal::StringLike& suffix) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::EndsWith(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4342:58: error: ‘suffix’ was not declared in this scope
4342 | internal::EndsWithMatcher(std::string(suffix)));
| ^~~~~~
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In member function ‘bool testing::internal::ExceptionMatcherImpl::MatchAndExplain(T&&, testing::MatchResultListener*) const’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:5150:65: error: no matching function for call to ‘GetTypeName(const std::type_info&)’
5150 | *listener << "throws an exception of type " << GetTypeName(typeid(err));
| ~~~~~~~~~~~^~~~~~~~~~~~~
In file included from /opt/ros/humble/src/gtest_vendor/include/gtest/internal/gtest-internal.h:67,
from /opt/ros/humble/src/gtest_vendor/include/gtest/gtest.h:62,
from /usr/src/googletest/googlemock/include/gmock/internal/gmock-internal-utils.h:47,
from /usr/src/googletest/googlemock/include/gmock/gmock-actions.h:145,
from /usr/src/googletest/googlemock/include/gmock/gmock.h:59,
from /home/student/isaac_ros_ws/src/isaac_ros_image_pipeline/isaac_ros_image_proc/test/image_format_converter_node_test.cpp:18:
/opt/ros/humble/src/gtest_vendor/include/gtest/internal/gtest-type-util.h:80:13: note: candidate: ‘template std::string testing::internal::GetTypeName()’
80 | std::string GetTypeName() {
| ^~~~~~~~~~~
/opt/ros/humble/src/gtest_vendor/include/gtest/internal/gtest-type-util.h:80:13: note: template argument deduction/substitution failed:
In file included from /usr/src/googletest/googlemock/include/gmock/gmock-spec-builders.h:75,
from /usr/src/googletest/googlemock/include/gmock/gmock-function-mocker.h:42,
from /usr/src/googletest/googlemock/include/gmock/gmock.h:61,
from /home/student/isaac_ros_ws/src/isaac_ros_image_pipeline/isaac_ros_image_proc/test/image_format_converter_node_test.cpp:18:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:5150:65: note: candidate expects 0 arguments, 1 provided
5150 | *listener << "throws an exception of type " << GetTypeName(typeid(err));
| ~~~~~~~~~~~^~~~~~~~~~~~~
In file included from /usr/src/googletest/googlemock/include/gmock/gmock-spec-builders.h:75,
from /usr/src/googletest/googlemock/include/gmock/gmock-function-mocker.h:42,
from /usr/src/googletest/googlemock/include/gmock/gmock.h:61,
from /home/student/isaac_ros_ws/src/isaac_ros_image_pipeline/isaac_ros_image_proc/test/resize_node_test.cpp:18:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In member function ‘testing::internal::FieldsAreMatcher::operator testing::Matcher() const’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:3165:49: error: ‘IndexSequenceFor’ was not declared in this scope; did you mean ‘IndexSequence’?
3165 | new FieldsAreMatcherImpl>(
| ^~~~~~~~~~~~~~~~
| IndexSequence
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:3165:71: error: expected parameter pack before ‘...’
3165 | new FieldsAreMatcherImpl>(
| ^~~
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:3165:71: error: template argument 2 is invalid
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4291:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4291 | const internal::StringLike& str) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4291:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4291 | const internal::StringLike& str) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::StrEq(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4293:61: error: ‘str’ was not declared in this scope; did you mean ‘std’?
4293 | internal::StrEqualityMatcher(std::string(str), true, true));
| ^~~
| std
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4299:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4299 | const internal::StringLike& str) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4299:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4299 | const internal::StringLike& str) {
| ^
In file included from /usr/src/googletest/googlemock/include/gmock/gmock.h:63,
from /home/student/isaac_ros_ws/src/isaac_ros_image_pipeline/isaac_ros_image_proc/test/image_format_converter_node_test.cpp:18:
/usr/src/googletest/googlemock/include/gmock/gmock-more-actions.h: In member function ‘decltype (testing::internal::InvokeArgument(get(std::forward_as_tuple((forward)(args)...)), (declval)()...)) testing::internal::InvokeArgumentAction::operator()(Args&& ...) const’:
/usr/src/googletest/googlemock/include/gmock/gmock-more-actions.h:519:47: error: ‘FlatTupleConstructTag’ was not declared in this scope
519 | internal::FlatTuple args_tuple(FlatTupleConstructTag{},
| ^~~~~~~~~~~~~~~~~~~~~
/usr/src/googletest/googlemock/include/gmock/gmock-more-actions.h: In function ‘testing::internal::InvokeArgumentAction::type ...> testing::InvokeArgument(Params&& ...)’:
/usr/src/googletest/googlemock/include/gmock/gmock-more-actions.h:564:17: error: ‘FlatTupleConstructTag’ is not a member of ‘testing::internal’
564 | internal::FlatTupleConstructTag{}, std::forward(params)...)};
| ^~~~~~~~~~~~~~~~~~~~~
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::StrNe(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4301:61: error: ‘str’ was not declared in this scope; did you mean ‘std’?
4301 | internal::StrEqualityMatcher(std::string(str), false, true));
| ^~~
| std
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4307:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4307 | const internal::StringLike& str) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4307:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4307 | const internal::StringLike& str) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::StrCaseEq(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4309:61: error: ‘str’ was not declared in this scope; did you mean ‘std’?
4309 | internal::StrEqualityMatcher(std::string(str), true, false));
| ^~~
| std
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4315:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4315 | const internal::StringLike& str) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4315:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4315 | const internal::StringLike& str) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::StrCaseNe(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4317:19: error: ‘str’ was not declared in this scope; did you mean ‘std’?
4317 | std::string(str), false, false));
| ^~~
| std
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4324:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4324 | const internal::StringLike& substring) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4324:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4324 | const internal::StringLike& substring) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::HasSubstr(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4326:59: error: ‘substring’ was not declared in this scope; did you mean ‘IsSubstring’?
4326 | internal::HasSubstrMatcher(std::string(substring)));
| ^~~~~~~~~
| IsSubstring
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4332:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4332 | const internal::StringLike& prefix) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4332:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4332 | const internal::StringLike& prefix) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::StartsWith(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4334:60: error: ‘prefix’ was not declared in this scope; did you mean ‘profil’?
4334 | internal::StartsWithMatcher(std::string(prefix)));
| ^~~~~~
| profil
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4340:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4340 | const internal::StringLike& suffix) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4340:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4340 | const internal::StringLike& suffix) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::EndsWith(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4342:58: error: ‘suffix’ was not declared in this scope
4342 | internal::EndsWithMatcher(std::string(suffix)));
| ^~~~~~
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In member function ‘bool testing::internal::ExceptionMatcherImpl::MatchAndExplain(T&&, testing::MatchResultListener*) const’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:5150:65: error: no matching function for call to ‘GetTypeName(const std::type_info&)’
5150 | *listener << "throws an exception of type " << GetTypeName(typeid(err));
| ~~~~~~~~~~~^~~~~~~~~~~~~
In file included from /opt/ros/humble/src/gtest_vendor/include/gtest/internal/gtest-internal.h:67,
from /opt/ros/humble/src/gtest_vendor/include/gtest/gtest.h:62,
from /usr/src/googletest/googlemock/include/gmock/internal/gmock-internal-utils.h:47,
from /usr/src/googletest/googlemock/include/gmock/gmock-actions.h:145,
from /usr/src/googletest/googlemock/include/gmock/gmock.h:59,
from /home/student/isaac_ros_ws/src/isaac_ros_image_pipeline/isaac_ros_image_proc/test/resize_node_test.cpp:18:
/opt/ros/humble/src/gtest_vendor/include/gtest/internal/gtest-type-util.h:80:13: note: candidate: ‘template std::string testing::internal::GetTypeName()’
80 | std::string GetTypeName() {
| ^~~~~~~~~~~
/opt/ros/humble/src/gtest_vendor/include/gtest/internal/gtest-type-util.h:80:13: note: template argument deduction/substitution failed:
In file included from /usr/src/googletest/googlemock/include/gmock/gmock-spec-builders.h:75,
from /usr/src/googletest/googlemock/include/gmock/gmock-function-mocker.h:42,
from /usr/src/googletest/googlemock/include/gmock/gmock.h:61,
from /home/student/isaac_ros_ws/src/isaac_ros_image_pipeline/isaac_ros_image_proc/test/resize_node_test.cpp:18:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:5150:65: note: candidate expects 0 arguments, 1 provided
5150 | *listener << "throws an exception of type " << GetTypeName(typeid(err));
| ~~~~~~~~~~~^~~~~~~~~~~~~
In file included from /usr/src/googletest/googlemock/include/gmock/gmock-spec-builders.h:75,
from /usr/src/googletest/googlemock/include/gmock/gmock-function-mocker.h:42,
from /usr/src/googletest/googlemock/include/gmock/gmock.h:61,
from /home/student/isaac_ros_ws/src/isaac_ros_image_pipeline/isaac_ros_image_proc/test/crop_node_test.cpp:18:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In member function ‘testing::internal::FieldsAreMatcher::operator testing::Matcher() const’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:3165:49: error: ‘IndexSequenceFor’ was not declared in this scope; did you mean ‘IndexSequence’?
3165 | new FieldsAreMatcherImpl>(
| ^~~~~~~~~~~~~~~~
| IndexSequence
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:3165:71: error: expected parameter pack before ‘...’
3165 | new FieldsAreMatcherImpl>(
| ^~~
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:3165:71: error: template argument 2 is invalid
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4291:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4291 | const internal::StringLike& str) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4291:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4291 | const internal::StringLike& str) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::StrEq(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4293:61: error: ‘str’ was not declared in this scope; did you mean ‘std’?
4293 | internal::StrEqualityMatcher(std::string(str), true, true));
| ^~~
| std
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4299:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4299 | const internal::StringLike& str) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4299:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4299 | const internal::StringLike& str) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::StrNe(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4301:61: error: ‘str’ was not declared in this scope; did you mean ‘std’?
4301 | internal::StrEqualityMatcher(std::string(str), false, true));
| ^~~
| std
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4307:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4307 | const internal::StringLike& str) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4307:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4307 | const internal::StringLike& str) {
| ^
In file included from /usr/src/googletest/googlemock/include/gmock/gmock.h:63,
from /home/student/isaac_ros_ws/src/isaac_ros_image_pipeline/isaac_ros_image_proc/test/resize_node_test.cpp:18:
/usr/src/googletest/googlemock/include/gmock/gmock-more-actions.h: In member function ‘decltype (testing::internal::InvokeArgument(get(std::forward_as_tuple((forward)(args)...)), (declval)()...)) testing::internal::InvokeArgumentAction::operator()(Args&& ...) const’:
/usr/src/googletest/googlemock/include/gmock/gmock-more-actions.h:519:47: error: ‘FlatTupleConstructTag’ was not declared in this scope
519 | internal::FlatTuple args_tuple(FlatTupleConstructTag{},
| ^~~~~~~~~~~~~~~~~~~~~
/usr/src/googletest/googlemock/include/gmock/gmock-more-actions.h: In function ‘testing::internal::InvokeArgumentAction::type ...> testing::InvokeArgument(Params&& ...)’:
/usr/src/googletest/googlemock/include/gmock/gmock-more-actions.h:564:17: error: ‘FlatTupleConstructTag’ is not a member of ‘testing::internal’
564 | internal::FlatTupleConstructTag{}, std::forward(params)...)};
| ^~~~~~~~~~~~~~~~~~~~~
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::StrCaseEq(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4309:61: error: ‘str’ was not declared in this scope; did you mean ‘std’?
4309 | internal::StrEqualityMatcher(std::string(str), true, false));
| ^~~
| std
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4315:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4315 | const internal::StringLike& str) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4315:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4315 | const internal::StringLike& str) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::StrCaseNe(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4317:19: error: ‘str’ was not declared in this scope; did you mean ‘std’?
4317 | std::string(str), false, false));
| ^~~
| std
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4324:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4324 | const internal::StringLike& substring) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4324:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4324 | const internal::StringLike& substring) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::HasSubstr(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4326:59: error: ‘substring’ was not declared in this scope; did you mean ‘IsSubstring’?
4326 | internal::HasSubstrMatcher(std::string(substring)));
| ^~~~~~~~~
| IsSubstring
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4332:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4332 | const internal::StringLike& prefix) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4332:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4332 | const internal::StringLike& prefix) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::StartsWith(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4334:60: error: ‘prefix’ was not declared in this scope; did you mean ‘profil’?
4334 | internal::StartsWithMatcher(std::string(prefix)));
| ^~~~~~
| profil
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: At global scope:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4340:21: error: ‘StringLike’ in namespace ‘testing::internal’ does not name a template type; did you mean ‘Strings’?
4340 | const internal::StringLike& suffix) {
| ^~~~~~~~~~
| Strings
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4340:31: error: expected ‘,’ or ‘...’ before ‘<’ token
4340 | const internal::StringLike& suffix) {
| ^
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In function ‘testing::PolymorphicMatcher > > testing::EndsWith(int)’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:4342:58: error: ‘suffix’ was not declared in this scope
4342 | internal::EndsWithMatcher(std::string(suffix)));
| ^~~~~~
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h: In member function ‘bool testing::internal::ExceptionMatcherImpl::MatchAndExplain(T&&, testing::MatchResultListener*) const’:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:5150:65: error: no matching function for call to ‘GetTypeName(const std::type_info&)’
5150 | *listener << "throws an exception of type " << GetTypeName(typeid(err));
| ~~~~~~~~~~~^~~~~~~~~~~~~
In file included from /opt/ros/humble/src/gtest_vendor/include/gtest/internal/gtest-internal.h:67,
from /opt/ros/humble/src/gtest_vendor/include/gtest/gtest.h:62,
from /usr/src/googletest/googlemock/include/gmock/internal/gmock-internal-utils.h:47,
from /usr/src/googletest/googlemock/include/gmock/gmock-actions.h:145,
from /usr/src/googletest/googlemock/include/gmock/gmock.h:59,
from /home/student/isaac_ros_ws/src/isaac_ros_image_pipeline/isaac_ros_image_proc/test/crop_node_test.cpp:18:
/opt/ros/humble/src/gtest_vendor/include/gtest/internal/gtest-type-util.h:80:13: note: candidate: ‘template std::string testing::internal::GetTypeName()’
80 | std::string GetTypeName() {
| ^~~~~~~~~~~
/opt/ros/humble/src/gtest_vendor/include/gtest/internal/gtest-type-util.h:80:13: note: template argument deduction/substitution failed:
In file included from /usr/src/googletest/googlemock/include/gmock/gmock-spec-builders.h:75,
from /usr/src/googletest/googlemock/include/gmock/gmock-function-mocker.h:42,
from /usr/src/googletest/googlemock/include/gmock/gmock.h:61,
from /home/student/isaac_ros_ws/src/isaac_ros_image_pipeline/isaac_ros_image_proc/test/crop_node_test.cpp:18:
/usr/src/googletest/googlemock/include/gmock/gmock-matchers.h:5150:65: note: candidate expects 0 arguments, 1 provided
5150 | *listener << "throws an exception of type " << GetTypeName(typeid(err));
| ~~~~~~~~~~~^~~~~~~~~~~~~
In file included from /usr/src/googletest/googlemock/include/gmock/gmock.h:63,
from /home/student/isaac_ros_ws/src/isaac_ros_image_pipeline/isaac_ros_image_proc/test/crop_node_test.cpp:18:
/usr/src/googletest/googlemock/include/gmock/gmock-more-actions.h: In member function ‘decltype (testing::internal::InvokeArgument(get(std::forward_as_tuple((forward)(args)...)), (declval)()...)) testing::internal::InvokeArgumentAction::operator()(Args&& ...) const’:
/usr/src/googletest/googlemock/include/gmock/gmock-more-actions.h:519:47: error: ‘FlatTupleConstructTag’ was not declared in this scope
519 | internal::FlatTuple args_tuple(FlatTupleConstructTag{},
| ^~~~~~~~~~~~~~~~~~~~~
/usr/src/googletest/googlemock/include/gmock/gmock-more-actions.h: In function ‘testing::internal::InvokeArgumentAction::type ...> testing::InvokeArgument(Params&& ...)’:
/usr/src/googletest/googlemock/include/gmock/gmock-more-actions.h:564:17: error: ‘FlatTupleConstructTag’ is not a member of ‘testing::internal’
564 | internal::FlatTupleConstructTag{}, std::forward(params)...)};
| ^~~~~~~~~~~~~~~~~~~~~
gmake[2]: *** [CMakeFiles/crop_node_test.dir/build.make:76: CMakeFiles/crop_node_test.dir/test/crop_node_test.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:404: CMakeFiles/crop_node_test.dir/all] Error 2
gmake[1]: *** Waiting for unfinished jobs....
gmake[2]: *** [CMakeFiles/image_format_converter_node_test.dir/build.make:76: CMakeFiles/image_format_converter_node_test.dir/test/image_format_converter_node_test.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:372: CMakeFiles/image_format_converter_node_test.dir/all] Error 2
gmake[2]: *** [CMakeFiles/resize_node_test.dir/build.make:76: CMakeFiles/resize_node_test.dir/test/resize_node_test.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:434: CMakeFiles/resize_node_test.dir/all] Error 2
gmake: *** [Makefile:146: all] Error 2
---
Failed <<< isaac_ros_image_proc [20.8s, exited with code 2]
Contributor guide
Research direction
Start by reproducing the build of isaac_ros_image_pipeline on Ubuntu 22.04 with ROS2 Humble, using the reported GCC, CMake, gtest, and gmock versions. Inspect the GoogleTest headers under /usr/src/googletest and the failing test file isaac_ros_image_proc/test/image_format_converter_node_test.cpp to determine whether incompatible headers are being mixed. Done means identifying the version or configuration mismatch and documenting a reproducible resolution.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cmake, cpp
- Domain
- build-system, testing-qa
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100