Debian不再为gTest提供任何预编译包.他们建议您将框架集成到项目的makefile中.但我想保持我的makefile干净.如何像以前的版本(<;1.6.0)一样设置gTest,以便可以链接到库?
Debian不再为gTest提供任何预编译包.他们建议您将框架集成到项目的makefile中.但我想保持我的makefile干净.如何像以前的版本(<;1.6.0)一样设置gTest,以便可以链接到库?
在你开始之前,确保你已经阅读并理解了
wget https://github.com/google/googletest/archive/release-1.8.0.tar.gz
或者在hand之前拿到.我不会保留这一点,所以如果你偶然发现它,并且链接已经过时,请随意编辑它.
tar xf release-1.8.0.tar.gz
cd googletest-release-1.8.0
cmake -DBUILD_SHARED_LIBS=ON .
make
这一步可能因发行版而异,因此请确保将标题和lib复制到正确的目录中.我通过判断Debians former gtest libs个的位置来实现这一点.但我相信有更好的方法.注意:make install
是危险的,不受支持
sudo cp -a googletest/include/gtest /usr/include
sudo cp -a googlemock/gtest/libgtest_main.so googlemock/gtest/libgtest.so /usr/lib/
... 并判断GNU链接器是否知道LIB
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
设置为链接器标志,如果您没有编写自己的测试mainroutine,还可以 Select 使用显式-lgtest_main
标志,将您的项目链接到库中.
从这里开始,你可能会想go 谷歌documentation,以及关于框架的old docs,了解它是如何工作的.编码快乐!
101