首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

用g++,make,cmakelist在linux openSUSE上编译googletest程序

在Linux openSUSE上使用g++、make和CMakeList编译googletest程序的步骤如下:

  1. 首先,确保你的系统已经安装了g++编译器、make工具和CMake。如果没有安装,可以使用以下命令进行安装:
  2. 首先,确保你的系统已经安装了g++编译器、make工具和CMake。如果没有安装,可以使用以下命令进行安装:
  3. 下载并解压googletest源代码。可以从官方GitHub仓库下载最新的源代码包,然后使用以下命令解压:
  4. 下载并解压googletest源代码。可以从官方GitHub仓库下载最新的源代码包,然后使用以下命令解压:
  5. 进入解压后的googletest目录,并创建一个build目录用于编译构建:
  6. 进入解压后的googletest目录,并创建一个build目录用于编译构建:
  7. 创建一个CMakeLists.txt文件,用于配置编译选项和依赖库:
  8. 创建一个CMakeLists.txt文件,用于配置编译选项和依赖库:
  9. 使用make命令进行编译:
  10. 使用make命令进行编译:
  11. 编译完成后,会生成一个名为libgtest.a的静态库文件和一个名为libgtest_main.a的主测试程序静态库文件。
  12. 如果你想运行googletest的示例程序,可以进入googletest目录下的samples目录,并使用以下命令进行编译:
  13. 如果你想运行googletest的示例程序,可以进入googletest目录下的samples目录,并使用以下命令进行编译:
  14. 编译完成后,会生成一些示例程序可执行文件,你可以运行这些示例程序进行测试。

总结: 在Linux openSUSE上使用g++、make和CMakeList编译googletest程序的步骤包括下载解压源代码、创建build目录、配置CMakeLists.txt文件、使用make命令进行编译,并可以运行示例程序进行测试。

关于googletest的更多信息和使用方法,你可以参考腾讯云提供的云原生测试工具Tencent TCM框架,它是基于googletest的测试框架,适用于云原生应用的测试。你可以在腾讯云的官方文档中了解更多关于Tencent TCM的介绍和使用方法: Tencent TCM

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 5.7打补丁—编译和官方一致的Linux_Generic包

    MySQL 5.7.21二进制包下载地址:(https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz) MySQL 5.7.21源码仓库github地址:(https://github.com/mysql/mysql-server/tree/mysql-5.7.21) MySQL 5.7的手册中"根据源码安装MySQL:(https://dev.mysql.com/doc/refman/5.7/en/source-installation.html)"章节中有如下内容,可参考"docs/INFO_BIN"文件中的内容获取官方编译时的环境信息: If you are interested in building MySQL from a source distribution using build options the same as or similar to those use by Oracle to produce binary distributions on your platform, obtain a binary distribution, unpack it, and look in the docs/INFO_BIN file, which contains information about how that MySQL distribution was configured and compiled. 解压安装包查看"docs/INFO_BIN"文件,可看到一系列的编译相关信息,其中kernel和cmake版本信息如下: Build was done on Linux-3.8.13-16.2.1.el6uek.x86_64 using x86_64 Build was done using cmake 2.8.12 根据kernel命名,可确定MySQL官方用的是Oracle Linux操作系统,对应的版本是6.5。镜像及下载地址如下: (https://mirrors.kernel.org/oracle/OL6/U5/x86_64/OracleLinux-R6-U5-Server-x86_64-dvd.iso) 在virt-manager(基于kvm的虚拟化)创建的虚拟机上安装操作系统,安装期间提示hardwarre不受支持。忽略错误强制安装操作系统后,启动失败。

    01

    使用cmake编译和安装jsoncpp-0.10.2

    网上主要介绍了python方式编译安装jsoncpp,但它的官网有介绍cmake安装命令行安装方式,以下笔记在SUSE Linux g++ 4.1.0上经过验证。 使用cmake生成Makefile文件,类似于执行automake的“configure”: cmake -DBUILD_STATIC_LIBS=ON -DBUILD_SHARED_LIBS=OFF -DINCLUDE_INSTALL_DIR=/usr/local/thirdparty/jsoncpp-0.10.2/include -DARCHIVE_INSTALL_DIR=/usr/local/thirdparty/jsoncpp-0.10.2/lib 这一步成功后,可以看到产生了Makefile文件,之后就可以执行“make”编译和“make install“安装了。 “cmake”参数说明: INCLUDE_INSTALL_DIR为指定“头文件”的安装目录 ARCHIVE_INSTALL_DIR为指定“静态库文件”的安装目录 LIBRARY_INSTALL_DIR为指定“共享库文件”的安装目录 RUNTIME_INSTALL_DIR为指定“可执行程序文件”的安装目录 BUILD_STATIC_LIBS=ON 表示生成静态库文件 BUILD_SHARED_LIBS=OFF 表示不生成共享库文件 如果想编译成debug版本,则加上“-DCMAKE_BUILD_TYPE=debug”。 遇到的编译错误1: include/json/config.h:100: error: ISO C++ does not support 'long long' include/json/config.h:101: error: ISO C++ does not support 'long long' 解决方法: 修改include/json/config.h,将下面一段 #if defined(_MSC_VER) // Microsoft Visual Studio typedef __int64 Int64; typedef unsigned __int64 UInt64; #else                 // if defined(_MSC_VER) // Other platforms, use long long typedef long long int Int64; typedef unsigned long long int UInt64; #endif // if defined(_MSC_VER) 修改成: #if defined(_MSC_VER) // Microsoft Visual Studio typedef __int64 Int64; typedef unsigned __int64 UInt64; #else                 // if defined(_MSC_VER) // Other platforms, use long long __extension__ typedef long long int Int64; __extension__ typedef unsigned long long int UInt64; #endif // if defined(_MSC_VER) 注意要加“__extension__”修饰,因为“long long”是C99标准中的,“__extension__”表示启用g++的扩展。 遇到的编译错误2: /tmp/X/jsoncpp-0.10.2/src/test_lib_json/main.cpp:1243: error: integer constant is too large for 'long' type 解决方法: 测试代码,可直接注释掉1243一行代码。

    02
    领券