cmake -U会做哪些操作
时间: 2023-07-24 21:28:29 浏览: 42
`cmake -U` 命令用于删除所有或指定的缓存条目,它会执行以下操作:
1. 删除 `CMakeCache.txt` 文件。
2. 删除所有或指定的缓存条目,并将它们的值恢复为默认值或未定义状态。
3. 在重新生成 `CMakeCache.txt` 文件时,将所有或指定的缓存条目排除在外。
需要注意的是,清除缓存后,你需要重新执行 `cmake` 命令来生成新的缓存和构建系统文件。如果你已经执行过 `cmake` 命令并生成了构建系统文件,你需要先删除构建目录,然后重新执行 `cmake` 命令才能生效。
如果你只想清除特定的缓存条目,可以将它们的名称作为参数传递给 `-U` 选项,例如:
```
cmake -U <variable1> -U <variable2> ...
```
这会清除指定的缓存条目,并将它们的值恢复为默认值或未定义状态。
相关问题
ild>cmake -
以下是回答和介绍:
cmake是一个跨平台的开源软件,用于管理C++软件项目的构建过程。它使用简单的配置文件来控制构建过程的生成,从而使开发人员能够在不同的操作系统和编译器之间轻松地重复构建过程。要使用cmake,您需要编写一个名为CMakeLists.txt的配置文件,该文件描述了项目的源代码,依赖项,编译器选项和其他构建参数。有关更详细的信息,请参阅cmake文档。
在命令行中运行cmake -?将显示cmake的命令行选项。这些选项包括:
```
Usage: cmake [options] <path-to-source>
Options:
-H <dir> Set the source directory.
-B <dir> Set the build directory.
-G <generator> Generate a native build system.
-T <toolset> Set the toolset to use in the generated build system.
-A <architecture> Set the architecture to build for in the generated build system.
-N <name=value> Set a CMake variable.
-D <var>[:<type>][=<value>] Set a CMake cache entry.
-U <globbing_expr> Remove matching entries from CMake cache.
-C <initial-cache> Pre-load a script to populate the cache.
-L[A][H] List non-advanced cached variables.
-LA[H] List all cached variables.
-U <globbing_expr> Remove matching entries from CMake cache.
--build <dir> Build a CMake-generated project binary tree.
--install <dir> Build and then install a project.
--version Report CMake version number.
--help Print usage information and exit.
```
cmake fortran添加 -FPIC
要为cmake添加-FPIC选项,你可以按照以下步骤进行操作:
1. 首先,确保已经正确安装了cmake。你可以从cmake的官方网站下载适合你操作系统的版本,并按照官方指南进行安装。
2. 在你的Fortran项目目录下,创建一个build文件夹,用于构建项目。
3. 在终端中,进入到build文件夹中,并运行以下命令来配置cmake构建过程:
cmake -DCMAKE_Fortran_FLAGS="-FPIC" ..
这个命令使用了-CMAKE_Fortran_FLAGS选项来设置Fortran编译器的选项,其中-FPIC选项用于生成位置无关代码。通过将该选项传递给cmake,它会在构建过程中将该选项传递给Fortran编译器。
4. 配置完成后,运行以下命令来构建项目:
cmake --build .
这个命令将根据之前的配置文件来构建项目。
请注意,以上步骤假设你已经正确安装了cmake,并且你的Fortran项目已经包含了CMakeLists.txt文件来定义构建过程。另外,根据你的具体需求,你可能还需要在CMakeLists.txt文件中添加其他配置选项。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [现代CMake高级教程](https://blog.csdn.net/u011436427/article/details/125838619)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *2* [cmake-3.16.0-Linux-x86-64.tar.gz](https://download.csdn.net/download/weixin_42859280/86773112)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *3* [现代 CMake 简明教程--CMake 基础](https://blog.csdn.net/weixin_41521681/article/details/113750350)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
[ .reference_list ]