ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

c – 如何将googleTest设置为Linux上的共享库

2019-09-19 11:51:58  阅读:227  来源: 互联网

标签:c unit-testing linux installation googletest


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”

标签:c,unit-testing,linux,installation,googletest
来源: https://codeday.me/bug/20190919/1812746.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有