cmake

cmake添加 版本到代码中

CMakeLists.txt: add_definitions(-DSYSMONITER_VER="${VER}") c++代码: void displayVersion(){ #ifdef SYSMONITER_VER std::cout << SYSMONITER_VER << std::end ......
版本 代码 cmake

cmake命令

CMake是一个跨平台的开源构建工具,用于管理C++项目的构建过程。 注意CMake命令语法不区分大小写 cmake_minimum_required:指定项目所需的CMake的最低版本。 cmake_minimum_required(VERSION <version>) project:定义项目的 ......
命令 cmake

为动态库编写XX-config.cmake文件

演示动态库结构 . ├─bin │ ├─Debug │ │ CTKCore.dll │ │ CTKPluginFramework.dll │ │ │ └─Release │ CTKCore.dll │ CTKPluginFramework.dll │ ├─cmake │ ctk-config.cma ......
XX-config 文件 动态 config cmake

cmake之解析宏或者函数参数

本文将介绍cmake如何解析函数或者宏对应的参数列表 语法查询 打开cmake手册,查询cmake_parse_arguments关键字即可, 如下图 语法 cmake_parse_arguments(<prefix> <options> <one_value_keywords> <multi_va ......
函数 参数 cmake

cmake关于.dll.a导入库的说明和window运行时动态库搜索路径的设置讨论

windows环境下生成动态库时导入库文件xxx.dll.a的问题 如何在运行时找到动态DLL库? ......
路径 动态 window cmake dll

OpenGL with GLFW GLAD and CMAKE

0. 前言 首先,无论是在youtube还是网站上,许多OpenGL的环境配置都是在VS studio里配置的,个人比较喜欢使用VS code,以及Cmake. 下文给出了一个Cmake版本关于 GLFW GLAD 的编译环境。 另外,感谢分享知识的人。 具体的代码已放入 github 中, 代码地 ......
OpenGL CMAKE GLFW GLAD with

【cmake】宏macro与函数function

cmake中的宏(macro)和函数(function)都支持动态参数 变量ARGC记录传入的参数个数 变量ARGV0,ARGV1,...顺序代表传入的参数 变量ARGV则是一个包含所有传入参数的list 变量ARGN也是一个包含传入参数的list,但不是所有参数,而是指macro/function ......
函数 function cmake macro

CommonTK框架之cmake生成工程文件

源码https://github.com/commontk/CTK 本文将介绍如何生成pluginFramework动态库 需要能上github, 项目以来了源码,需要从github上下载。 详见CMakeExternals文件夹下的cmake脚本 修改master根目录下的CMakeLists.t ......
框架 CommonTK 文件 工程 cmake

cmake对每个源文件生成可执行对象

project(hello) # 将当前目录下所有源文件放到变量SRC中 aux_source_directory(./ SRC) # 遍历所有源文件 foreach(src ${SRC}) # 获取文件名 get_filename_component(target ${src} NAME_WE) ......
源文件 对象 cmake

CommonTK框架之Qt5配置cmake脚本

源码获取 CommonTK CMake配置 打开下图的CMake脚本文件 添加下面的代码 SET(CTK_QT_VERSION 5) SET(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} "C:/major/development/tools/qt/5.14/inst ......
脚本 框架 CommonTK cmake Qt5

Cmake减少输出可执行文件的大小

1、使用Release模式 set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -s") set(CMAKE_BUILD_TYPE "RELEASE") 2、使用strip命令删除调试信息等 set(CMAKE_STRIP "strip") add ......
大小 文件 Cmake

CMAKE相对路径编译和python的ctypes引用

CMAKE相对路径编译和python的ctypes引用 cmake 编译库使用相对路径 cmake 编译使用相对路径生成动态库,进而满足其他代码的调用,如python的ctypes 由于ctypes能调用c,而不能调用c++,所以,使用extern c来处理,使ctypes能够调用。 extern ......
路径 python ctypes CMAKE

cmake设置目标文件的绝对路径

通常Linux问题不大,Windows下老是会出现Debug和Release目录 ,导致不一致 这样设置即可 set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG ${CMAKE_CURRENT_SOURCE_DIR}/../bin) set(CMAKE_RUNTIME_ ......
路径 目标 文件 cmake

grpc c++ cmake 项目配置

提出问题:https://stackoverflow.com/questions/32823563/using-cmake-to-create-protobuf-grpc-cc-files 引出解答:https://www.f-ax.de/dev/2020/11/08/grpc-plugin-cma ......
项目 cmake grpc

bilibili B站:【文档向】CMake基础知识 - 原作者笔记Markdown风格

视频摘自B站:https://www.bilibili.com/video/BV1hz4y1H7YA 笔记摘自:https://gitee.com/yanmu_ym/cpp [TOC] # 预备知识 ## CMake是什么 CMake是一个管理代码构建的工具。与平台和构建系统无关。最初CMake只用 ......

搭建 QT6+OpenCv4.7+CMake的环境

本文主要介绍如何搭建QT6+OpenCv的开发环境,基本流程如下 先安装CMake3.27.3,用来编译适用用QT的OpenCv的源码,安装完成后要配置系统的环境变量 安装Qt6的开发环境,并配置环境变量,注意一定要重启电脑才能生效 下载OpenCv的源码,用于后面的编译 上述环境准备好后,使用CM ......
OpenCv4 环境 OpenCv CMake QT6

cmake入门到入土

介绍 CMakeLists.txt 的语法比较简单,由命令、注释和空格组成,其中命令是不区分大小写的。符号 # 后面的内容被认为是注释。命令由命令名称、小括号和参数组成,参数之间使用空格进行间隔。 最简单的例程 单个源文件 假设我们的项目中只有一个源文件,且该源文件是一个指数幂函数的实现和运用。 / ......
cmake

cmake基础示例:如何编译【跨平台】的动态库和应用程序

示例代码 首先看一下测试代码的全貌: mylib:只有一个源文件,编译输出一个动态库; myapp:也只有一个源文件,链接 mylib 动态库,编译输出一个可执行程序; mylib 在mylib目录中,一共有3个文件:mylib.h, mylib.c 以及 CMakeLists.txt,内容分别如下 ......
示例 应用程序 基础 程序 动态

CMake 备忘录

## CMAKE 配置 protobuf Q: protobuf_generate_cpp 是 CMake 的内置函数么? A: 不是的。protobuf_generate_cpp 不是 CMake 的内置函数,而是由 FindProtobuf.cmake 模块提供的一个函数,用于从 .proto ......
备忘录 CMake

qt程序调用cuda-11.7,cmake编译时,提示:"CMakeCUDACompilerId.cu" failed. Compiler: /usr/local/cuda/bin/nvcc Build flags: Id flags: --keep;--keep-dir;tmp -v

报错显示: Running /home/wc/software/cmake-3.26.3-linux-x86_64/bin/cmake /home/wc/work/junke_src/missile-sim '-GCodeBlocks - Unix Makefiles' in /home/wc/wo ......
flags CMakeCUDACompilerId cuda quot keep

Centos7 安装cmake-绿色版

下载Cmake wget https://cmake.org/files/v3.6/cmake-3.6.2.tar.gz解压Cmake tar xvf cmake-3.6.2.tar.gz && cd cmake-3.6.2/编译版本安装方式: 开始 编译安装cmake ./bootstrapgma ......
Centos7 绿色 Centos cmake

CMake生成Visual Studio工程

# CMake – 生成Visual Studio工程 C/C++项目经常使用CMake构建工具。CMake 项目文件(例如 CMakeLists.txt)可以直接由 Visual Studio 使用。本文要说明的是如何将CMake项目转换到Visual Studio解决方案(.sln)或项目(.v ......
Visual Studio 工程 CMake

聊聊CMake和Makefile,并谢谢ChatGPT

缘起 和一个在公司里上班的姐姐聊天,她讲到自己配CMake环境有点崩溃,因为之前没有接触过这些。 而我想起来第一次接触是在Games101的交流群里,看到有人问CMake的问题&求教程。 后来暑假电赛训练的时候看队友提到过CMake,前几天也交流了一些CMake相关的东西。 CMake的频繁出现让我 ......
Makefile ChatGPT CMake

【ToolChains】CLion(VS2019) + CMake + Vcpkg 的使用

> 参考博客: > > * https://blog.51cto.com/u_15075510/4201238 > * http://t.csdn.cn/pADDU > * https://zhuanlan.zhihu.com/p/454233496 > * https://blog.csdn.ne ......
ToolChains CLion CMake Vcpkg 2019

记录一个 qt+cmake 项目不生成 ui_xxx.h 文件的问题

最近做一个 Qt 的项目的代码迁移到新平台,遇到一个问题。这个项目使用的 CMake 构建脚本,项目中的某个`ui`文件怎么都不能生成 对应的`ui_xxx.h`文件,其他的文件都没有问题,使用`qmake`构建也没有问题。 经过排查,问题原因如下: ```cpp #include"ui_xxx.h ......
文件 项目 ui_xxx 问题 cmake

cmake 命令行带参数

CMake 命令行可以带有一些参数,用于控制和配置 CMake 的行为。这些参数可以在执行 cmake 命令时传递给 CMake。以下是一些常用的 CMake 命令行参数: **-D**:用于设置 CMake 变量。例如,-DVAR_NAME=VALUE 可以设置一个 CMake 变量的值 ```b ......
命令 参数 cmake

如何在CMAKE中指定python路径——使用cmake为python编译扩展模块时指定python路径

答案: cmake -DPython3_EXECUTABLE=/path/to/bin/python3 参考: https://stackoverflow.com/questions/49908989/cmake-cant-find-python3 ......
python 路径 中指 模块 CMAKE

CMake基础命令

## 基础命令 [文档](https://cmake.org/cmake/help/latest/command/project.html#command:project) - 设置CMake的最低版本要求 ```CMake cmake_minimum_required(VERSION [...] ......
命令 基础 CMake

cmake configure_file函数补充说明。

从[configure_file](https://cmake.org/cmake/help/latest/command/configure_file.html#command:configure_file)中出现了`#cmakedefine`和`#define`用法,看完没有明白实际的区别。 > ......
configure_file 函数 configure cmake file

C++ 使用 Googletest cmake 设定

项目 CMakeLists 文件中加入: 1 include(FetchContent) 2 FetchContent_Declare( 3 googletest 4 URL https://github.com/google/googletest/archive/03597a01ee50ed33e ......
Googletest cmake