cmake 学习笔记
1.路径
_mkdir(ROOT_DIR "/data/");
if (NOT ROOT_DIR_DEFINED)
add_definitions(-DROOT_DIR="${PROJECT_SOURCE_DIR}")
set(ROOT_DIR_DEFINED ON)
endif()
if (NOT ROOT_DIR_DEFINED)
set(ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR})
if (ARM)
add_definitions(-DROOT_DIR="./")
else()
add_definitions(-DROOT_DIR="${PROJECT_SOURCE_DIR}")
endif()
set(ROOT_DIR_DEFINED ON)
endif()
多个源文件工程编译
cmake_minimum_required(VERSION 3.5)project(ssca)set(CMAKE_CXX_STANDARD 14)set(WINDOWS TRUE CACHE INTERNAL "")
set(PLATFORM_PREFIX "win64" CACHE INTERNAL "")
set_property(GLOBAL PROPERTY USE_FOLDERS ON)set(OpenCV_STATIC ON)
set(OpenCV_DIR D:/thirdparty/build/install/win64)find_package(OpenCV REQUIRED)FILE(GLOB_RECURSE src_SRC_LIST "src/*.cpp src/*.h")
FILE(GLOB_RECURSE CAFilter_SRC_LIST "CAFilter/*.cpp CAFilter/*.h")
FILE(GLOB_RECURSE CANLC_SRC_LIST "CANLC/*.cpp CANLC/*.h")
FILE(GLOB_RECURSE CAST_SRC_LIST "CAST/*.cpp CAST/*.h")
FILE(GLOB_RECURSE CC_SRC_LIST "CC/*.cpp CC/*.h")
FILE(GLOB_RECURSE PPSG_SRC_LIST "PPSG/*.cpp PSG/*.h")
FILE(GLOB_RECURSE PPWM_SRC_LIST "PPWM/*.cpp PPWM/*.h")add_executable(ssca main.cpp ${src_SRC_LIST} ${CAFilter_SRC_LIST} ${CANLC_SRC_LIST} ${CAST_SRC_LIST} ${CC_SRC_LIST} ${PPSG_SRC_LIST} ${PPWM_SRC_LIST})
target_link_libraries(ssca ${OpenCV_LIBS})
3.多个编译子文件家
add_subdirectory(sample/image_cv_gpumat)
4 .switch:
option(ENABLE_REALSENSE "Build with xxx" OFF)
if (ENABLE_REALSENSE)
add_definitions(-DENABLE_REALSENSE)
add_subdirectory(common)
endif()
cmake 学习笔记相关推荐
- cmake 学习笔记(三) (转)
接前面的 Cmake学习笔记(一) 与 Cmake学习笔记(二) 继续学习 cmake 的使用. 学习一下cmake的 finder. finder是神马东西? 当编译一个需要使用第三方库的软件时,我 ...
- CMake 学习笔记 02 - 更复杂的项目
CMake 学习笔记 02 - 更复杂的项目 源代码见 https://github.com/fengyc/cmake-tutorial 源代码目录组织 一般的项目,会划分为多个子目录,每个子目录中包 ...
- cmake学习笔记(七)编写自己的xxxConfig.cmake
cmake学习笔记(七)编写自己的xxxConfig.cmake 1. onnxruntimeConfig.cmake 2. 进阶版onnxruntimeConfig.cmake 1. onnxrun ...
- cmake学习笔记(五)
cmake学习笔记(五) 添加系统检测 检测代码环境中是否存在某些库文件,在MathFunctions/CMakeLisits.txt添加如下代码: include(CheckSymbolExists ...
- CMake学习笔记(一)——CMake官网教程
CMake学习笔记(一)--CMake官网教程 前言: 经历了一星期痛苦的交叉编译,笔者深刻认知到Linux下make的重要性.所以准备放缓两三天自己的工作进度,并学习一下CMake与Makefile ...
- cmake学习笔记--cmake的打印、创建工程等基本操作(1)
最近项目代码重构切换到了cmake的编译环境下. 有幸学习了一下cmake的一些基本的操作,记录一下. 0 . 创建一个工程 0.0 指明工程需要的cmake的最低版本(或者是最低到最高) cmake ...
- cmake 学习笔记(一)
最大的Qt4程序群(KDE4)采用cmake作为构建系统 Qt4的python绑定(pyside)采用了cmake作为构建系统 开源的图像处理库 opencv 采用cmake 作为构建系统 ... 看 ...
- cmake 学习笔记(四)
接前面的一二三,学习一下 CMakeCache.txt 相关的东西. CMakeCache.txt 可以将其想象成一个配置文件(在Unix环境下,我们可以认为它等价于传递给configure的参数). ...
- cmake学习笔记之add_library、target_link_libraries和link_directories
cmake是Linux(这里默认是Ubuntu系统)下常使用的编译C++的工具,而使用cmake就需要先在CmakeLists.txt文件中对编译规则进行.这里介绍常用的三种指令add_library ...
- cmake 学习笔记之相对路径编译动态链接库
相对路径编译动态链接库 欢迎使用Markdown编辑器 欢迎使用Markdown编辑器 在学习CMake的过程中在想要编译相对路径的动态链接库时碰到了一大堆问题,特此记录下来. 第一步是编译出动态链接 ...
最新文章
- Dataset:(公交车、恐龙、大象、花朵、骏马)六类图片数据集(AutoKeras测试)的简介、下载、使用方法之详细攻略
- Python列表、元组
- Deep Learning for Content-Based Image Retrival:A Comprehensive Study 论文笔记
- linux监控进程挂死,linux系统下实时监控进程以及定位杀死挂起的进程
- 小米手机怎么删除桌面计算机,手机桌面图标怎么删除,小米手机怎样删除桌面图标-...
- 计算机一级pdf百度云,计算机一级(实操).pdf
- vue.js中使用甘特图(gantt-elastic)的使用
- 怎么克隆计算机的mac,选中克隆为当前电脑MAC地址
- UML图 | 让你快速学会使用 Visio 绘制时序图(顺序、序列),再也不用担心文档画图问题啦!!
- 一份来自蚂蚁金服大佬的数据库设计总结(纯干货)
- dB、dBm、dBc等概念的解释
- Linux文件操作命令及磁盘分区与文件系统
- 高等数学(第七版)同济大学 习题12-7 个人解答
- 纯HTML+CSS 画奥运五环标志,我就是闲的
- C 语言 抽象语法树AST
- 万字长文回顾智能驾驶进化史
- 特斯拉无人驾驶最核心的人工智能算法,竟是强化学习
- mysql 的references_mysql中 主键、外键、references的用法
- 李永乐复习全书概率论与数理统计 第五、六章 大数定律和中心极限定理及数理统计的基本概念
- freeMarker生成静态html页面
热门文章
- java steam 去重_Java中对List去重, Stream去重
- Linux如何配置网络IP地址
- mysql中设置字符_MySQL中设置默认字符集的方法
- python tkinter库 密码实时显示_Python3 tkinter基础 Entry show textvariable 密码输入框
- java a星寻路算法_用简单直白的方式讲解A星寻路算法原理
- pythondistutils安装_python – 与distutils / pip一起安装Bash完成
- 基于fpga的dds函数信号发生器的设计_超声信号功率放大器驱动压电陶瓷测试
- arcgis xml 下载 切片_xml格式文件如何用arcgis进行编辑和更新
- linux进程管理子系统分析,linux进程管理子系统简要分析
- linux 修改块大小,linux 查看及修改os系统块的大小