当前位置: 首页 > news >正文

CMake 学习笔记

   一直想了解CMake,但是不知从何入门。最近看了CMake 官方的Tutorial,感觉的确很适合入门。

    首先要安装CMake, 安装步骤:

  1. 直接去下载最新版Download | CMake
  2. macos 点开CMake 后,遵循“How to Install For Command Line Use” 菜单项,使得cmake在 terminal可用

     接下来直接按照Tutorial 的目录来阅读Tutorial 即可。

     其中每一章节都会告诉你要学哪些东西,基本每条命令都有超链接链到该条命令的说明文档,先阅读说明文档,大致了解后,根据Todo 列表,依次在CMakeLists.txt里面写好本章所要求的项目,完成CMake build。即可学会当前章节内容。

       这里记录一些命令:

 check_cxx_source_compiles

        常见的开源软件里检测某些函数是否存在应该就是使用这条命令。如:

 check_cxx_source_compiles("#include <cmath>int main() {std::log(1.0);return 0;}" HAVE_LOG)

cmake 就会尝试编译双引号内的代码,如果能编译成功,就会定义HAVE_LOG 变量为true,就表示std::log函数存在。

cmake build的输出如下:

-- Performing Test HAVE_LOG
-- Performing Test HAVE_LOG - Success
-- Performing Test HAVE_EXP
-- Performing Test HAVE_EXP - Success

http://www.lryc.cn/news/153608.html

相关文章:

  • docker高级(DockerFile解析)
  • 抽象类实现接口的意义
  • 什么是接口测试,如何做接口测试?
  • Keil 编译 Debug
  • 【通用消息通知服务】0x3 - 发送我们第一条消息(Websocket)
  • Eclipse打jar包与JavaDOC文档的生成
  • 力扣:80. 删除有序数组中的重复项 II(Python3)
  • linux:需要注意docker和aws的rds的mysql默认是UTC而不是中国时区
  • 访问 GitHub 方法
  • 旅游APP外包开发注意事项
  • ROS机器人编程---------(二)ROS中的核心概念
  • Python学习教程:进程的调度
  • ElasticSearch第三讲:ES详解 - Elastic Stack生态和场景方案
  • 基于Java+SpringBoot+Vue前后端分离农商对接系统设计和实现
  • 【模方ModelFun】实景三维建模和修模4.0.7最新版安装包以及图文安装教程
  • 介绍几个搜索引擎
  • iPhone 隔空投送使用指南:详细教程
  • 百度文心一言GPT免费入口也来了!!!
  • 线程调度和线程控制
  • laravel excel导入导出
  • Windows无法删除分区怎么办?
  • 【请求报错:javax.net.ssl.SSLHandshakeException: No appropriate protocol】
  • elementUI textarea可自适应文本高度的文本域
  • WebRTC-Streamer交叉编译
  • 将目录下的所有pdf文件都转换为对应名字的png图片
  • windows主机和Ubuntu虚拟机共享设置
  • 北京APP外包开发需要注意的问题
  • 自然语言处理:提取长文本进行文本主要内容(文本意思)概括 (两种方法,但效果都一般)
  • 基于SpringCloudAlibaba实现的NacosConfig
  • 景联文科技:高质量AI数据标注助力大语言模型训练,推动人工智能落地应用