CMake:add_executable

add_executable(targetName source1 [source2 ...])

这将创建一个可执行文件,它可以在CMake项目中被称为 targetName 。该名称可能包含字母、数字、下划线和连字符。构建项目时,将在构建目录中创建一个具有平台相关名称的可执行文件,默认名称基于目标名称。思考以下简单的命令示例:

add_executable(myApp main.cpp)

默认情况下,可执行文件的名称在Windows上是 myApp.exe ,在基于Unix的平台上是 myApp ,如macOS、Linux等。可执行文件的名称可以用目标属性定制,通过用不同的目标名称多次调用add_executable(),也可以在一个CMakeLists.txt文件中定义多个可执行文件。如果在多个add_executable()命令中使用相同的目标名称,CMake将失败并突出显示错误。

CMake 是一个跨平台的自动化构建系统,它使用 CMakeLists.txt 文件来控制软件的编译过程。CMake 提供了一系列命令来添加可执行文件和库文件到构建过程中。 `add_executable` 命令用于从指定的源文件列表创建一个可执行文件。基本语法如下: ```cmake add_executable(<name> [WIN32] [MACOSX_BUNDLE] [EXCLUDE_FROM_ALL] [source1] [source2 ...]) ``` 其中 `<name>` 是目标可执行文件的名称,后面的参数是可选的,`WIN32` 指定生成的可执行文件适用于 Windows 系统,`MACOSX_BUNDLE` 用于生成 MacOS 系统下的应用程序包,`EXCLUDE_FROM_ALL` 表示该目标不会从 CMakeLists.txt 的顶级级别自动构建。源文件列表列出了创建该可执行文件所需的所有源代码文件。 `add_library` 命令用于创建一个库文件。基本语法如下: ```cmake add_library(<name> [STATIC | SHARED | MODULE | OBJECT | INTERFACE] [EXCLUDE_FROM_ALL] [source1] [source2 ...]) ``` 其中 `<name>` 是目标库文件的名称,`STATIC`、`SHARED`、`MODULE`、`OBJECT`、`INTERFACE` 指定了库文件的类型。`STATIC` 表示生成静态库,`SHARED` 表示生成动态链接库,`MODULE` 用于插件等模块化的动态库,`OBJECT` 用于创建对象文件集合,`INTERFACE` 用于定义接口目标,这些接口目标可以被其他目标使用。与 `add_executable` 类似,`EXCLUDE_FROM_ALL` 用于表示该目标不应从顶级构建。 使用 `add_executable` 和 `add_library` 可以在 CMake 中定义项目结构,它们是项目构建过程中的基础组件。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值