Debian不再为gTest提供任何预编译的包.他们建议您将框架集成到项目的makefile中.但我想保持makefile干净.如何像以前的版本( 1.6.0)一样设置gTest,以便我可以链接到库? 在开始之前确保您已阅
this note from Google!本教程简单易用,但可能会介绍 nasty bugs.
1.获取googletest框架
wget https://github.com/google/googletest/archive/release-1.8.0.tar.gz
或者在hand之前得到它.我不会保留这个小方法,所以如果你偶然发现并且链接已经过时,请随时编辑它.
2.解压缩并构建谷歌测试
tar xf release-1.8.0.tar.gz cd googletest-release-1.8.0 cmake -DBUILD_SHARED_LIBS=ON . make
3.“安装”系统上的标头和库.
此步骤可能与发行版到发行版不同,因此请确保将标头和库复制到正确的目录中.我通过检查Debians former gtest libs所在的位置完成了这项工作.但我确信有更好的方法可以做到这一点.注意:make install很危险,不受支持
$sudo cp -a include/gtest /usr/include $sudo cp -a libgtest_main.so libgtest.so /usr/lib/
4.更新链接器的缓存
…并检查GNU链接器是否知道库
$sudo ldconfig -v | grep gtest
如果输出如下所示:
libgtest.so.0 -> libgtest.so.0.0.0 libgtest_main.so.0 -> libgtest_main.so.0.0.0
, 一切都好.
gTestframework现在可以使用了.只是不要忘记通过将-lgtest设置为链接器标志来将项目与库链接,并且可选地,如果您没有编写自己的测试主程序,则使用显式的-lgtest_main标志.
从这里开始,您可能想要了解有关框架的Googles documentation以了解它的工作原理.快乐的编码!
编辑:
这也适用于OS X!见“How to properly setup googleTest on OS X”