acidrainstudios / TrueReality

True Reality (TR) is an open source LGPL Game and Simulation Engine written entirely in Standard C++ and OpenGL. It runs on all Windows platforms and GNU/Linux. OpenSceneGraph is used as its graphics engine, along with many other open source projects for support of various features.
GNU Lesser General Public License v3.0
12 stars 7 forks source link

trUtil build failure #144

Open maria-garavaglia opened 4 years ago

maria-garavaglia commented 4 years ago

The following build error appears when trying to build TR 0.1.1912. Tried with both version 1.8.3 and 1.8.4 of jsoncpp and with both devtoolset 6 and 7. Skipping trUtil tests in the CMake config fixes the issue.

In file included from /home/tyler.garavaglia/rpmbuild/SOURCES/TrueReality-0.1.1912/Tests/TrUtil/JsonTests.h:24:0,
                 from /home/tyler.garavaglia/rpmbuild/SOURCES/TrueReality-0.1.1912/Tests/TrUtil/JsonTests.cpp:22:
/usr/local/googletest/1.8.0/include/gtest/gtest.h: In instantiation of ‘testing::AssertionResult testing::internal::CmpHelperEQ(const char*, const char*, const T1&, const T2&) [with T1 = trUtil::JSON::ValueType; T2 = Json::ValueType]’:
/usr/local/googletest/1.8.0/include/gtest/gtest.h:1421:23:   required from ‘static testing::AssertionResult testing::internal::EqHelper<lhs_is_null_literal>::Compare(const char*, const char*, const T1&, const T2&) [with T1 = trUtil::JSON::ValueType; T2 = Json::ValueType; bool lhs_is_null_literal = false]’
/home/tyler.garavaglia/rpmbuild/SOURCES/TrueReality-0.1.1912/Tests/TrUtil/JsonTests.cpp:101:5:   required from here
/usr/local/googletest/1.8.0/include/gtest/gtest.h:1392:11: error: comparison between ‘const enum trUtil::JSON::ValueType’ and ‘const enum Json::ValueType’ [-Werror=enum-compare]
   if (lhs == rhs) {
       ~~~~^~~~~~
/usr/local/googletest/1.8.0/include/gtest/gtest.h: In instantiation of ‘testing::AssertionResult testing::internal::CmpHelperEQ(const char*, const char*, const T1&, const T2&) [with T1 = unsigned int; T2 = int]’:
/usr/local/googletest/1.8.0/include/gtest/gtest.h:1421:23:   required from ‘static testing::AssertionResult testing::internal::EqHelper<lhs_is_null_literal>::Compare(const char*, const char*, const T1&, const T2&) [with T1 = unsigned int; T2 = int; bool lhs_is_null_literal = false]’
/home/tyler.garavaglia/rpmbuild/SOURCES/TrueReality-0.1.1912/Tests/TrUtil/JsonTests.cpp:188:5:   required from here
/usr/local/googletest/1.8.0/include/gtest/gtest.h:1392:11: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
/usr/local/googletest/1.8.0/include/gtest/gtest.h: In instantiation of ‘testing::AssertionResult testing::internal::CmpHelperEQ(const char*, const char*, const T1&, const T2&) [with T1 = long unsigned int; T2 = int]’:
/usr/local/googletest/1.8.0/include/gtest/gtest.h:1421:23:   required from ‘static testing::AssertionResult testing::internal::EqHelper<lhs_is_null_literal>::Compare(const char*, const char*, const T1&, const T2&) [with T1 = long unsigned int; T2 = int; bool lhs_is_null_literal = false]’
/home/tyler.garavaglia/rpmbuild/SOURCES/TrueReality-0.1.1912/Tests/TrUtil/JsonTests.cpp:189:5:   required from here
/usr/local/googletest/1.8.0/include/gtest/gtest.h:1392:11: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]