如何在 OS X 上正确设置 googleTest,除了 XCode
How to properly setup googleTest on OS X aside from XCode
如何设置 gTest,以便我可以链接到库?我将在 vim 中编码,所以我只想安装库,这与 XCode 设置不同。目标是能够通过将-lgtest
设置为链接器标志来将项目链接到库,如果我没有编写自己的测试主例程,则可以选择显式-lgtest_main
标志。
在开始之前,请确保您已阅读并理解这张来自谷歌的笔记!本教程使使用 gtest 变得容易,但可能会引入令人讨厌的错误。
1. 获取谷歌测试框架
$ wget https://github.com/google/googletest/archive/release-1.8.0.zip
或者用手拿。我想我不会操纵这个小操作方法,所以如果你偶然发现了它并且链接已经过时,请随时编辑它。
2. 解压缩并构建谷歌测试
$ unzip gtest-1.8.0.zip
$ cd gtest-1.8.0
$ ./configure
$ make
3. 在您的系统上"安装"标头和库。
$ sudo cp -a include/gtest /usr/include
$ sudo cp -a lib/.libs/* /usr/lib/
gTestframework现在可以使用了。只是不要忘记通过设置-lgtest
链接器标志来将项目链接到库,如果您没有编写自己的测试主例程,则可以选择显式-lgtest_main
标志。
从这里开始,您可能想转到有关该框架的Google文档以了解其工作原理。祝您编码愉快!
建议您静态链接。没有秘密。有点跑题了,我在我的项目中使用 CMake,我推荐,在这里(https://github.com/oblitum/operations)我设置了一个非常基本的骨架项目,链接到 gmock 和 gtest(谷歌也建议你在使用 gmock 时使用相同的 gtest)。在external
文件夹中驻留着外部CMake文件,这些文件实际上通过ExternalProject_Add
导入gtest和gmock。在示例中,我将URL
设置为下载 gmock 和 gtest 的系统中的文件路径,但是,如果您检查 CMake ExternalProject_Add
文档,您可以看到下载 URL、在线存储库 URL 也可用,这可以让您的构建下载 gtest 和 gmock,并自动缓存它。
我认为cmake是在OSX上设置和使用gtest的简单方法。它无需手动复制文件即可工作。解压缩 gooletest-release-1.8.0,然后
cd googletest-release-1.8.0
# create a build directory
mkdir build
cd build
# build configuration
cmake .. -DBUILD_GTEST=ON -DBUILD_SHARED_LIBS=ON
# build it
make
# installation
sudo make install
之后,您可以使用 cmake 命令轻松地将 gtest 合并到您的项目中
# sets GTEST_INCLUDE_DIRS and GTEST_LIBRARIES
find_package( GTest REQUIRED )
# adds the gtest include directory
include_directories( ${GTEST_INCLUDE_DIRS} )
# links gtest
target_link_libraries( yourTestApp ${GTEST_LIBRARIES} )
- 为不同配置设置MSVC_RUNTIME_LIBRARY的正确方法是什么
- 在C++/Linux中设置单调时钟的一些技巧
- 如何在选项卡视图Qt中设置一个新项目,并保存以前的项目
- 嵌套在类中时无法设置成员数据
- 需要帮助设置在C++中使用的Potrace
- 如何在自删除后将对象设置为nullptr
- 将指针设置为"nullptr"并不能防止双重删除?
- 如何在Ubuntu中使用cmake设置qt4
- ld:bind_at_load和-bitcode_bundle(Xcode设置ENABLE_bitcode=YES)不能
- 如何在boost beast http请求中设置http头
- 如何解决gcc编译器优化导致的centos双编译器设置中的分段错误
- 如何将这个C++哈希表转换为动态扩展和收缩,而不是使用硬设置的最大值
- 为什么文件名被设置为一个点,而不是在读取矢量中的文件名时
- 如何在24位SDL_Surface上设置像素的颜色
- std::设置自定义比较器
- 如何设置一个范围来提取我想要获得的信息
- 如何在 Linux 上将 googleTest 设置为共享库
- 如何在 OS X 上正确设置 googleTest,除了 XCode
- 如何在Windows上设置GoogleTest变量GTEST_LIBRARY GTEST_INCLUDE_DIR和GTE
- 没有调用googletest设置方法