草庐IT

CMAKE_EXPORT_COMPILE_COMMANDS

全部标签

通过cmake工程生成visual studio解决方案

1、前言visualstudio是一个很强大的开发工具,这个工具主要是通过解决方案对我们的源码进行编译等操作。但是我们很多时候拿到的可能并不是一个直接的解决方案,可能是是一个cmake工程,那么这个时候我们就需要通过cmake工程生成解决方案,然后就可以通过visualstudio进行编译和调试了。2、前置条件当前前提是安装了cmake和visualstudio工具,cmake具体的安装步骤可以参考:windows下cmake快速安装教程3、准备源文件和CMakeList.txt如下图所示,将三个文件放在同一个目录cmake_generate_sl下面:每个文件的内容如下://cmake_ge

ubuntu升级cmake版本

今天遇到了cmake版本过低不能编译开源代码的问题,以CMake3.24.2为例,记录一下升级cmake版本的步骤:先卸载原来的cmakeapt-getremovecmakecmake-gui安装Wgetsudoapt-getupdatesudoapt-getinstallwgetbuild-essentiallibssl-dev下载并解压cmake源码wgethttps://github.com/Kitware/CMake/releases/download/v3.24.2/cmake-3.24.2.tar.gztar-zxfcmake-3.24.2.tar.gz配置,编译和安装cmakec

Linux 系统下 CMake 示 例

CMake是一个开源的跨平台工具,可以构建、测试和打包软件。它具有如下特性:自动搜索可能需要的程序、库和头文件的能力;独立的构建目录(如build),可以安全清理;支持复杂的自定义命令(下载、生成各种文件);自定义配置可选组件;从简单的文本文件(CMakeLists.txt)自动生成工作区和项目的能力;在主流平台上自动生成文件依赖项并支持并行构建;几乎支持所有的IDE1.安装CMakesudoaptinstallcmake-y安装完成后用查看版本指令cmake-version检查CMake是否安装成功。出现以上提示代表安装成功。2.第一个CMake例子我们首先新建两个文件,main.cpp和C

vs项目转cmake(.sln转CMakeLists.txt)

解决方案一:(未解决,boost安装出错)proj2cmakehttps://github.com/mrpi/proj2cmake另附cmake镜像站:https://cmake.org/files/编译proj2cmake时报错:CouldNOTfindBoost(missing:Boost_INCLUDE_DIRsystemfilesystem可参考https://www.cnblogs.com/tang-zhou-zhou/p/16067695.html编译boost使用vs2017的x64_x86交叉工具命令提示符进入解压后的boost文件夹运行bootstrap.batb2tools

java - 将 a 属性设置为没有 Ant 的 maven.compile.classpath 包含的内容

我想在我的pom中将一个属性设置为包含所有项目依赖项的类路径。ant插件会做类似这样的事情,所以我知道这绝对是可能的。我基本上想在我的pom中任何我喜欢的地方使用${maven.compile.classpath}并让它“正常工作”。我不介意使用插件或其他任何东西来实现这一点。非常感谢,尼克 最佳答案 从2.7版开始,maven-dependency-plugin现在可以为类路径设置一个属性。这是一个例子:maven-dependency-plugin2.8generate-sourcesbuild-classpathmaven.c

java - Gradle 构建失败 [无法解析配置 ':compile' 的所有依赖项。]

我尝试了很多天来解决这个异常,关注了很多博客但找不到解决方案。当我通过将jettyRun作为命令运行bundle.gradle时Iamgettinganexception**FAILURE:Buildfailedwithanexception.*Whatwentwrong:Couldnotresolvealldependenciesforconfiguration':compile'.>Couldnotresolvejavax.servlet:servlet-api:2.5.Requiredby::1-SimpleServlet:unspecified>CouldnotGET'http

ORB-SLAM3的CMake与ROS编译以及测试(亲自总结,亲测可用)

目录ORB-SLAM3的CMake编译1 配置环境1.1确定g++的版本1.2安装Pangolin1.3Eigen3版本确认1.4 安装openCV4.4.01.5下载编译DBoW21.6 下载编译g2o2 编译ORB_SLAM32.1编译过程遇到的错误1:交换空间的内存不足 2.2编译过程会报错 error:‘decay_t’isnotamemberof‘std’        这篇博客的主要目的是实用性地记录如何成功地运行ORB-SLAM3。ORB-SLAM3有两个版本,分别是常规版本和ROS版本,因此本文也将重点介绍这两个部分。为了方便编译,源代码中提供了两个脚本,分别是build.sh

Java/JVM(热点): Is there a way to save JIT performance gains at compile time?

当我测量我的Java应用程序的吞吐量时,我发现随着时间的推移性能提高了50%:对于前10万条消息,我每秒收到约3,000条消息对于第二个10万条消息,我每秒收到约4,500条消息。我相信性能会随着JIT优化执行路径而提高。不保存JIT编译的原因是“JVM执行的优化不是静态的,而是动态的,基于数据模式和代码模式。很可能这些数据模式将在应用程序的生命周期内发生变化,从而导致缓存优化达不到最佳效果。”但是,我知道这些数据模式在我的应用程序生命周期内不会改变,甚至在多个应用程序生命周期内也不会改变。那么我怎样才能在HotSpotJVM中“保存”这些性能提升呢?另请参阅相关的question和d

cmake应用:集成gtest进行单元测试

  编写代码有bug是很正常的,通过编写完备的单元测试,可以及时发现问题,并且在后续的代码改进中持续观测是否引入了新的bug。对于追求质量的程序员,为自己的代码编写全面的单元测试是必备的基础技能,在编写单元测试的时候也能复盘自己的代码设计,是提高代码质量极为有效的手段。  本文主要介绍以下几个方面的内容:  1、何为单元测试  2、何为gtest  3、怎么使用gtest  4、怎么运行测试一单元测试是什么?  单元测试(UnitTesting),一般指对软件中的最小可测试单元进行检查和验证。最小可测试单元可以是指一个函数、一次调用过程、一个类等,不同的语言可能有不同的测试方法,暂时不必深究。

cmake应用:集成gtest进行单元测试

编写代码有bug是很正常的,通过编写完备的单元测试,可以及时发现问题,并且在后续的代码改进中持续观测是否引入了新的bug。对于追求质量的程序员,为自己的代码编写全面的单元测试是必备的基础技能,在编写单元测试的时候也能复盘自己的代码设计,是提高代码质量极为有效的手段。在本系列前序的文章中已经介绍了CMake很多内容,本文是针对单元测试的外延。  本文主要介绍以下几个方面的内容:  1、何为单元测试  2、何为gtest  3、怎么使用gtest  4、怎么运行测试一、单元测试是什么?  单元测试(UnitTesting),一般指对软件中的最小可测试单元进行检查和验证。最小可测试单元可以是指一个函