vengi icon indicating copy to clipboard operation
vengi copied to clipboard

CMAKE: unresolved gmock symbols when using system wide installation of googletest

Open mgerhardy opened this issue 2 years ago • 1 comments

[1/1003] Linking CXX executable tests-core/vengi-tests-core
FAILED: tests-core/vengi-tests-core 
: && /usr/bin/c++ -fdiagnostics-parseable-fixits -D_FORTIFY_SOURCE=2 -D__STDC_FORMAT_MACROS -fno-exceptions -fno-rtti  -fdiagnostics-parseable-fixits -Wall -Wextra -D_GNU_SOURCE -D_BSD_SOURCE -D_DEFAULT_SOURCE -D_XOPEN_SOURCE -D_FORTIFY_SOURCE=2 -Wreturn-type -Wwrite-strings -Wno-unused-parameter -fdiagnostics-color=auto -pthread -g -g -fno-omit-frame-pointer -g -DDEBUG -fstack-protector-strong -fno-omit-frame-pointer -latomic src/modules/core/CMakeFiles/tests-core.dir/tests-core_main.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/AlgorithmTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/ArrayTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/BufferTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/ColorTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/ConcurrentDynamicArrayTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/ConcurrentPriorityQueueTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/ConcurrentQueueTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/CoreTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/DynamicArrayTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/EventBusTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/ListTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/LogTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/MapTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/MD5Test.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/PoolAllocatorTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/QueueTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/ReadWriteLockTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/RingBufferTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/SetUtilTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/SharedPtrTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/StackTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/StringTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/StringUtilTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/ThreadPoolTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/ThreadTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/TokenizerTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/VarTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/VectorTest.cpp.o src/modules/core/CMakeFiles/tests-core.dir/tests/ZipTest.cpp.o -o tests-core/vengi-tests-core  /usr/lib/libgtest.so.1.11.0  Debug/lib/libcore.a  -pthread  /usr/lib/libSDL2.so  Debug/lib/libglm.a  -ldl  Debug/lib/libbackward.a  /usr/lib/libdw.so && :
/usr/bin/ld: src/modules/core/CMakeFiles/tests-core.dir/tests-core_main.cpp.o: in function `main':
/home/ivche/Dev/engine/build/Debug/src/modules/core/tests-core_main.cpp:24: undefined reference to `testing::InitGoogleMock(int*, char**)'
collect2: error: ld returned 1 exit status

/usr/lib/libgtest.so.1.11.0 is linked.

mgerhardy avatar Dec 22 '21 19:12 mgerhardy

this is easy to work-around with - just uninstall libgoogletest-dev or compile with unittests disabled cmake -DUNITTESTS=OFF (on arch the package is called gtest)

mgerhardy avatar Jan 21 '22 07:01 mgerhardy