【发布时间】:2020-11-10 15:04:06
【问题描述】:
我正在使用 CMake 开发 C/C++ 应用程序。我想在我的项目中使用 GTest 进行单元测试。为此,我决定在我的存储库中使用 GTest 作为 git 子模块。
我的目录层次如下:
/
--include
--lib
--GoogleTest
--src
--Tests
lib 中的GoogleTest 子目录包含来自官方存储库的 GTest 源代码。
但我无法使用它来测试我的来源。我的仓库根目录下的CMakeLists.txt文件如下:
OPTION (BUILD_UNIT_TESTS "Build unit tests" ON)
if (BUILD_UNIT_TESTS)
enable_testing ()
find_package (GTest REQUIRED)
add_subdirectory (Tests)
endif ()
但我收到错误:
错误:找不到 GTest(缺少:GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
当我搜索这个时,有很多与我类似的问题,但没有一个解决我的问题。而且他们的手册非常有限,并没有详细说明它的使用方法。
CMake 能够成功构建目标 GTest,但当我尝试将其用作外部包时无法识别它。
【问题讨论】:
-
要使用
find_package,您必须安装该库。
标签: c++ cmake googletest