CMake 命令

2023-11-06

1、Usage

cmake [options] <path-to-source>
cmake [options] <path-to-existing-build>

cmake [选项] <源码路径>
cmake [选项] <现有构建路径>
Specify a source directory to (re-)generate a build system for it in thecurrent working directory.
Specify an existing build directory tore-generate its build system.

2、Options

-C <initial-cache>          = Pre-load a script to populate the cache.
  当cmake在一个空的构建树上第一次运行时,它会创建一个CMakeCache.txt文件,然后向其中写入可定制的项目设置数据。-C选项可以用来指定一个文件,在第一次解析这个工程的cmake清单文件时,从这个文件加载缓存的条目(cache entries)信息。被加载的缓存条目比项目默认的值有更高的优先权。参数中给定的那个文件应该是一个CMake脚本,其中包含有使用CACHE选项的SET命令;而不是一个缓存格式的文件。
  -D <var>:<type>=<value>     = Create a cmake cache entry.
  当cmake第一次运行于一个空的构建数时,它会创建一个CMakeCache.txt文件,并且使用可定制的工程设置来填充这个文件。这个选项可以用来指定优先级高于工程的默认值的工程设置值。这个参数可以被重复多次,用来填充所需要数量的缓存条目(cache entries)。
  -U <globbing_expr>          = Remove matching entries from CMake cache.
  CMake的缓存文件中删除一条匹配的条目。
 该选项可以用来删除CMakeCache.txt文件中的一或多个变量。文件名匹配表达式(globbing expression)支持通配符*和?的使用。该选项可以重复多次以删除期望数量的缓存条目。使用它时要小心,你可能因此让自己的CMakeCache.txt罢工。
  -G <generator-name>         = Specify a build system generator.
  指定一个makefile生成工具。在具体的平台上,CMake可以支持多个原生的构建系统。makefile生成工具的职责是生成特定的构建系统。
  可能的生成工具在附件。
  -T <toolset-name>           = Specify toolset name if supported by generator.
  指定生成工具所支持的工具集。如MSVC,MinGW。
  -A <platform-name>          = Specify platform name if supported by generator.
  指定生成工具所支持的平台。
  -Wno-dev                    = Suppress developer warnings.
  抑制开发者警告。抑制那些为CMakeLists.txt文件的作者准备的警告信息。
  -Wdev                       = Enable developer warnings.
  开启开发者警告信息输出功能。允许那些为CMakeLists.txt文件的作者准备的警告信息。
  -E                          = CMake command mode.
  CMake命令行模式。
 为了真正做到与平台无关,CMake提供了一系列可以用于所有系统上的的命令。以-E参数运行CMake会帮助你获得这些命令的用法。可以使用的命令有:chdir, copy, copy_if_different copy_directory, compare_files, echo, echo_append, environment, make_directory, md5sum, remove_directory, remove, tar, time, touch, touch_nocreate, write_regv, delete_regv, comspec, create_symlink。
  -L[A][H]                    = List non-advanced cached variables.
  列出非高级的缓存变量
  --build <dir>               = Build a CMake-generated project binary tree.
  构建由CMake生成的工程的二进制树。
  -N                          = View mode only.
  查看模式。仅仅加载缓存信息,并不实际运行配置和生成步骤。
  -P <file>                   = Process script mode.
  处理脚本模式。将给定的cmake文件按照CMake语言编写的脚本进行处理。不执行配置和生成步骤,不修改缓存信息。如果要使用-D选项定义变量,-D选项必须在-P选项之前。
  --find-package              = Run in pkg-config like mode.
  --graphviz=[file]           = Generate graphviz of dependencies, see
                                CMakeGraphVizOptions.cmake for more.
   生成依赖的graphviz图。生成一个graphviz软件的输入文件,其中包括了项目中所有库和可执行文件之间的依赖关系。
  --system-information [file] = Dump information about this system.
  输出与该系统相关的信息。输出范围比较广的、与当前使用的系统有关的信息。如果在一个CMake工程的二进制构建树的顶端运行该命令,它还会打印一些附加信息,例如缓存,日志文件等等。
  --debug-trycompile          = Do not delete the try_compile build tree.
                                Only useful on one try_compile at a time.
  不删除“尝试编译”路径。不删除那些为try_compile调用生成的路径。这在调试失败的try_compile文件时比较有用。不过,因为上一次“尝试编译”生成的旧的垃圾输出文件也许会导致一次不正确通过/不通过,且该结果与上次测试的结果不同,所以该选项可能会改变“尝试编译”的结果。对于某一次“尝试编译”,该选项最好只用一次;并且仅仅在调试时使用。
  --debug-output              = Put cmake in a debug mode.
  将cmake设置为调试模式。在cmake运行时,打印额外的信息;比如使用message(send_error)调用得到的栈跟踪信息。
  --trace                     = Put cmake in trace mode.
  将cmake设置为跟踪模式。用message(send_error )调用,打印所有调用生成的跟踪信息,以及这些调用发生的位置。(这句话含义不是很确定—译注。)
  --warn-uninitialized        = Warn about uninitialized values.
  为没有初始化的值发出警告。
  --warn-unused-vars          = Warn about unused variables.
  为没有使用的变量发出警告。
  --no-warn-unused-cli        = Don't warn about command line options.
  命令行选项不要发出警告。
  --check-system-vars         = Find problems with variable usage in system files.
  在系统文件中查找关于变量使用的问题。
  --help,-help,-usage,-h,-H,/?= Print usage information and exit.
  打印用法信息,然后退出。
  --version,-version,/V [<f>] = Print version number and exit.
  打印版本号,然后退出。
  --help-full [<f>]           = Print all help manuals and exit.
  打印所有帮助信息,然后退出。
  --help-manual <man> [<f>]   = Print one help manual and exit.
  打印一条帮助信息,然后退出。
  --help-manual-list [<f>]    = List help manuals available and exit.
  列出所有可用命令的清单,然后退出。该选项列出的信息含有所有命令的名字;其中,每个命令的帮助信息可以使用--help-command选项后跟一个命令名字得到。如果指定了[file]参数,帮助信息会写到file中,输出格式依赖于文件名后缀。支持的文件格式包括:man page,HTML,DocBook以及纯文本。
  --help-command <cmd> [<f>]  = Print help for one command and exit.
  打印单个命令cmd的帮助信息,然后退出。显示给定的命令的完整的文档。如果指定了[file]参数,该文档会写入该文件,其输出格式由该文件的后缀名确定。支持的文件类型有:man page,HTML,DocBook以及纯文本。
  --help-command-list [<f>]   = List commands with help available and exit.
  --help-commands [<f>]       = Print cmake-commands manual and exit.
  打印所有命令的帮助文件,然后退出。显示所有当前版本的命令的完整文档。如果指定了[file]参数,帮助信息会写到file中,输出格式依赖于文件名后缀。支持的文件格式包括:man page,HTML,DocBook以及纯文本。
  --help-module <mod> [<f>]   = Print help for one module and exit.
  --help-module-list [<f>]    = List modules with help available and exit.
  --help-modules [<f>]        = Print cmake-modules manual and exit.
  --help-policy <cmp> [<f>]   = Print help for one policy and exit.
  --help-policy-list [<f>]    = List policies with help available and exit.
  --help-policies [<f>]       = Print cmake-policies manual and exit.
  --help-property <prop> [<f>]= Print help for one property and exit.
  --help-property-list [<f>]  = List properties with help available and exit.
  --help-properties [<f>]     = Print cmake-properties manual and exit.
  --help-variable var [<f>]   = Print help for one variable and exit.
  打印单个变量的帮助信息,然后退出。
  --help-variable-list [<f>]  = List variables with help available and exit.
  列出文档中有记录的变量,然后退出。
  --help-variables [<f>]      = Print cmake-variables manual and exit.
  打印所有变量的帮助信息,然后退出。

Generators

The following generators are available on this platform:
  Visual Studio 6             = Generates Visual Studio 6 project files.
  Visual Studio 7             = Generates Visual Studio .NET 2002 project
                                files.
  Visual Studio 10 2010       = Generates Visual Studio 10 (VS 2010) project
                                files.
  Visual Studio 11 2012       = Generates Visual Studio 11 (VS 2012) project
                                files.
  Visual Studio 12 2013       = Generates Visual Studio 12 (VS 2013) project
                                files.
  Visual Studio 14 2015       = Generates Visual Studio 14 (VS 2015) project
                                files.
  Visual Studio 7 .NET 2003   = Generates Visual Studio .NET 2003 project
                                files.
  Visual Studio 8 2005        = Generates Visual Studio 8 2005 project files.
  Visual Studio 9 2008        = Generates Visual Studio 9 2008 project files.
  Borland Makefiles           = Generates Borland makefiles.
  NMake Makefiles             = Generates NMake makefiles.
  NMake Makefiles JOM         = Generates JOM makefiles.
  MSYS Makefiles              = Generates MSYS makefiles.
  MinGW Makefiles             = Generates a make file for use with
                                mingw32-make.
  Unix Makefiles              = Generates standard UNIX makefiles.
  Ninja                       = Generates build.ninja files (experimental).
  Watcom WMake                = Generates Watcom WMake makefiles.
  CodeBlocks - MinGW Makefiles= Generates CodeBlocks project files.
  CodeBlocks - NMake Makefiles= Generates CodeBlocks project files.
  CodeBlocks - Ninja          = Generates CodeBlocks project files.
  CodeBlocks - Unix Makefiles = Generates CodeBlocks project files.
  CodeLite - MinGW Makefiles  = Generates CodeLite project files.
  CodeLite - NMake Makefiles  = Generates CodeLite project files.
  CodeLite - Ninja            = Generates CodeLite project files.
  CodeLite - Unix Makefiles   = Generates CodeLite project files.
  Eclipse CDT4 - MinGW Makefiles
                              = Generates Eclipse CDT 4.0 project files.
  Eclipse CDT4 - NMake Makefiles
                              = Generates Eclipse CDT 4.0 project files.
  Eclipse CDT4 - Ninja        = Generates Eclipse CDT 4.0 project files.
  Eclipse CDT4 - Unix Makefiles
                              = Generates Eclipse CDT 4.0 project files.
  Kate - MinGW Makefiles      = Generates Kate project files.
  Kate - NMake Makefiles      = Generates Kate project files.
  Kate - Ninja                = Generates Kate project files.
  Kate - Unix Makefiles       = Generates Kate project files.
  Sublime Text 2 - MinGW Makefiles
                              = Generates Sublime Text 2 project files.
  Sublime Text 2 - NMake Makefiles
                              = Generates Sublime Text 2 project files.
  Sublime Text 2 - Ninja      = Generates Sublime Text 2 project files.
  Sublime Text 2 - Unix Makefiles
                              = Generates Sublime Text 2 project files.

转载自http://www.cnblogs.com/coderfenghc/archive/2012/06/16/CMake_ch_01.html,转载请注明出处。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CMake 命令 的相关文章

  • 编译时运算符

    有人可以列出 C 中可用的所有编译时运算符吗 C 中有两个运算符 无论操作数如何 它们的结果始终可以在编译时确定 它们是sizeof 1 and 2 当然 其他运算符的许多特殊用途可以在编译时解决 例如标准中列出的那些整数常量表达式 1 与
  • 通过 CMIS (dotCMIS) 连接到 SP2010:异常未经授权

    我正在使用 dotCMIS 并且想要简单连接到我的 SP2010 服务器 我尝试用 C 来做到这一点 如下所示http chemistry apache org dotnet getting started with dotcmis htm
  • 在哪里可以找到列出 SSE 内在函数操作的官方参考资料?

    是否有官方参考列出了 GCC 的 SSE 内部函数的操作 即 头文件中的函数 除了 Intel 的 vol 2 PDF 手册外 还有一个在线内在指南 https www intel com content www us en docs in
  • 从Web API同步调用外部api

    我需要从我的 Web API 2 控制器调用外部 api 类似于此处的要求 使用 HttpClient 从 Web API 操作调用外部 HTTP 服务 https stackoverflow com questions 13222998
  • 如何使用 ICU 解析汉字数字字符?

    我正在编写一个使用 ICU 来解析由汉字数字字符组成的 Unicode 字符串的函数 并希望返回该字符串的整数值 五 gt 5 三十一 gt 31 五千九百七十二 gt 5972 我将区域设置设置为 Locale getJapan 并使用
  • 用于登录 .NET 的堆栈跟踪

    我编写了一个 logger exceptionfactory 模块 它使用 System Diagnostics StackTrace 从调用方法及其声明类型中获取属性 但我注意到 如果我在 Visual Studio 之外以发布模式运行代
  • OleDbDataAdapter 未填充所有行

    嘿 我正在使用 DataAdapter 读取 Excel 文件并用该数据填充数据表 这是我的查询和连接字符串 private string Query SELECT FROM Sheet1 private string ConnectStr
  • 在 ASP.NET 5 中使用 DI 调用构造函数时解决依赖关系

    Web 上似乎充斥着如何在 ASP NET 5 中使用 DI 的示例 但没有一个示例显示如何调用构造函数并解决依赖关系 以下只是众多案例之一 http social technet microsoft com wiki contents a
  • C# 中通过 Process.Kill() 终止的进程的退出代码

    如果在我的 C 应用程序中 我正在创建一个可以正常终止或开始行为异常的子进程 在这种情况下 我通过调用 Process Kill 来终止它 但是 我想知道该进程是否已退出通常情况下 我知道我可以获得终止进程的错误代码 但是正常的退出代码是什
  • 带动态元素的 WPF 启动屏幕。如何?

    我是 WPF 新手 我需要一些帮助 我有一个加载缓慢的 WPF 应用程序 因此我显示启动屏幕作为权宜之计 但是 我希望能够在每次运行时更改屏幕 并在文本区域中显示不同的引言 这是一个生产力应用程序 所以我将使用非愚蠢但激励性的引言 当然 如
  • 重载<<的返回值

    include
  • 显示UnityWebRequest的进度

    我正在尝试使用下载 assetbundle统一网络请求 https docs unity3d com ScriptReference Networking UnityWebRequest GetAssetBundle html并显示进度 根
  • 如何在整个 ASP .NET MVC 应用程序中需要授权

    我创建的应用程序中 除了启用登录的操作之外的每个操作都应该超出未登录用户的限制 我应该添加 Authorize 每个班级标题前的注释 像这儿 namespace WebApplication2 Controllers Authorize p
  • 什么时候虚拟继承是一个好的设计? [复制]

    这个问题在这里已经有答案了 EDIT3 请务必在回答之前清楚地了解我要问的内容 有 EDIT2 和很多评论 有 或曾经 有很多答案清楚地表明了对问题的误解 我知道这也是我的错 对此感到抱歉 嗨 我查看了有关虚拟继承的问题 class B p
  • 这些作业之间是否存在顺序点?

    以下代码中的两个赋值之间是否存在序列点 f f x 1 1 x 2 不 没有 在这种情况下 标准确实是含糊不清的 如果你想确认这一点 gcc 有这个非常酷的选项 Wsequence point在这种情况下 它会警告您该操作可能未定义
  • 如何使用 C# / .Net 将文件列表从 AWS S3 下载到我的设备?

    我希望下载存储在 S3 中的多个图像 但目前如果我只能下载一个就足够了 我有对象路径的信息 当我运行以下代码时 出现此错误 遇到错误 消息 读取对象时 访问被拒绝 我首先做一个亚马逊S3客户端基于我的密钥和访问配置的对象连接到服务器 然后创
  • 向现有 TCP 和 UDP 代码添加 SSL 支持?

    这是我的问题 现在我有一个 Linux 服务器应用程序 使用 C gcc 编写 它与 Windows C 客户端应用程序 Visual Studio 9 Qt 4 5 进行通信 是什么very在不完全破坏现有协议的情况下向双方添加 SSL
  • 如何在Xamarin中删除ViewTreeObserver?

    假设我需要获取并设置视图的高度 在 Android 中 众所周知 只有在绘制视图之后才能获取视图高度 如果您使用 Java 有很多答案 最著名的方法之一如下 取自这个答案 https stackoverflow com a 24035591
  • 将控制台重定向到 .NET 程序中的字符串

    如何重定向写入控制台的任何内容以写入字符串 对于您自己的流程 Console SetOut http msdn microsoft com en us library system console setout aspx并将其重定向到构建在
  • C++ 中类级 new 删除运算符的线程安全

    我在我的一门课程中重新实现了新 删除运算符 现在我正在使我的代码成为多线程 并想了解这些运算符是否也需要线程安全 我在某处读到 Visual Studio 中默认的 new delete 运算符是线程安全的 但这对于我的类的自定义 new

随机推荐

  • Linux-编写一个自己的命令

    前言 1 在Linux中 我们对文件路径进行操作都需要输入命令 那么 有人可能就会有疑惑了 命令是什么东西 我们是否也可以创造出自己的命令呢 答案是可以的 命令本身其实就是可执行文件 但是 与普通的可执行文件的不同之处在于 命令的可执行文件
  • unity 内置图标

    lt 转 Unity内建图标列表 weixin 30878361 2018 11 14 12 32 00 211 收藏 文章标签 游戏 移动开发 ui 最后发布 2018 11
  • 一款好用的富文本编辑器

    目录 项目功能介绍 资源介绍 swagger接口文档 编辑器功能展示 项目目录讲解 前端 后端 部分代码展示 前端 富文本编辑器页面App vue 后端 文章查询保存 serviceImpl 功能演示 源码分享 给大家分享一个好用的富文本编
  • apt-get update和 upgrade的区别

    update update is used to resynchronize the package index files from their sources The indexes of available packages are
  • 【腾讯云 Cloud Studio 实战训练营】提升开发效率与协作:探索腾讯云 Cloud Studio 的强大功能与优势

    文章目录 一 前言 二 认识腾讯云 Cloud Studio 2 1 什么是云端开发环境 2 2 CDE 的特点与优点 2 2 1 提高效率 开发环境一键运行 2 2 2 提高生产力 可以并行的工作 2 2 3 开发更加规范 2 2 4 提
  • vscode设置sdk_1 visual studio code 配置C++开发环境 (windows 开发环境)

    0 引言 最近帮GF 不幸变成ex了 配置C 开发环境 一开始想给她装个visual studio13完事 但是一想到自己安装以及使用时的诸多麻烦 就有点退却 觉得没有这个必要 正好了解到vscode大行其道 决定按照官网指示配置一版 由于
  • 【STM32】中断与NVIC以外部中断为例

    前言 在stm32中姑且可以认为 异常就是中断 单片机上电之后 首先执行启动文件 开辟堆栈之后 开始初始化中断向量表 NVIC NVIC NVIC是嵌套向量中断控制器 控制着整个芯片中断相关的功能 它跟内核紧密耦合 是内核里面的一个外设 三
  • 专家PID控制matlab程序

    专家PID控制matlab程序 1 专家PID控制 专家PID控制的实质是 基于受控对象和控制规律的各种知识 无须知道被控对象的精确模型 利用专家经验来设计PID参数 专家PID控制是一种直接型专家控制器 典型的二阶系统单位阶跃响应误差曲线
  • 【Linux】这篇文章让你彻底搞懂什么是环境变量

    深入理解环境变量 一 什么是环境变量 二 常见的环境变量 2 1 PATH 2 2 HOME 2 3 SHELL 三 查看与设置变量 四 如何理解命令行带参 五 如何通过代码如何获取环境变量 一 什么是环境变量 总述 环境变量 enviro
  • Win10安装Linux虚拟机-安装与使用

    Win10安装Linux虚拟机 安装与使用 1 VMware 的下载 VMWare虚拟机软件是一个 虚拟PC 软件 它使你可以在一台机器上同时运行二个或更多Windows DOS LINUX系统 下载地址 https customercon
  • ie浏览器打不开闪退_教你修复win7IE浏览器闪退的问题

    使用win7系统的朋友不少会使用IE浏览器来访问网页的时候 经常会出现IE浏览器自动退出了 另外在闪退前会有个提示 出现一个问题导致程序停止正常工作 那么这样的问题该怎样解决呢 下面就跟小编来了解一下怎样修复IE浏览器问题吧 Win7 IE
  • Flex3.2 Lists & Grids 内存泄漏

    所有继承于ListBase的类List DataGrid AdvancedDataGrid and TileList 在选中列表中的一项后 增加了鼠标相关Listener 导致泄漏 SDK3 3中已经修改 Sdk3 2中修复补丁http w
  • 使用plsql访问远程数据库

    1 plsql输入ip端口数据库实例名直接登录 Username 用户名 如 scott Password 用户对应密码 如 tiger Database 数据库位置 语法为 ip 端口号 数据库实例名 如 192 168 1 156 15
  • Nand Flash的同步、异步、ONFI、Toggle

    1 SDR和DDR SDR Single Data Rate 写读数据使用上升沿或下降沿来触发 因为只用上升沿或下降沿 对信号准确性要求较低 DDR Double Data Rate 写数据时通过MCU来控制DQS信号跳变沿来触发 即上升沿
  • android fragment 重复创建的问题

    解决fragment重复创建目前用到有两个方法 1 fragment同viewpager一起使用 vp setOffscreenPageLimit 3 设置缓存页面的个数 2 fragment单独使用 在onCreateView 方法中加入
  • 用C语言写UTF-8编码的文件

    原文地址 http blog csdn net zaffix article details 7217701 为实现用C语言写UTF 8编码的文件 测试了以下两种情况 第一种情况 为 fopen 指定一个编码 然后写入 wchar t 字符
  • Flink笔记14:Flink之window起始点的确定与watermark使用详解

    1 window起始时间的确定 在TimeWindow java中有如下方法来确定window的起始时间 public static long getWindowStartWithOffset long timestamp long off
  • win32 API函数大全

    1 API之网络函数 WNetAddConnection 创建同一个网络资源的永久性连接 WNetAddConnection2 创建同一个网络资源的连接 WNetAddConnection3 创建同一个网络资源的连接 WNetCancelC
  • Python网络爬虫之数美滑块的加密及轨迹之动态js参数分析

    前言 数美滑块的加密及轨迹等应该是入门级别的吧 用他们的教程和话来说 就一个des 然后识别缺口位置可以用cv2或者ddddoc 轨迹 也可以随便模拟一个 这些简单的教程 在csdn已经有一大把可以搜到的 但是却很少人告诉你 它的js好像是
  • CMake 命令

    1 Usage cmake options