add_library和add_executable的区别
时间: 2024-01-08 17:04:09 浏览: 100
add_library和add_executable是CMake中用于添加库和可执行文件的两个函数。
add_library用于添加一个库文件,可以是静态库(.a文件)或者动态库(.so文件)。它的语法为:
```cmake
add_library(<name> [STATIC | SHARED | MODULE]
[EXCLUDE_FROM_ALL]
[source1] [source2 ...])
```
其中,<name>为库的名称,可以自定义,[STATIC | SHARED | MODULE]用于指定库的类型,默认为STATIC静态库。[EXCLUDE_FROM_ALL]用于将该库从构建过程中排除,不会被构建,默认为不排除。后面的[source1] [source2 ...]用于指定库的源文件。
add_executable用于添加一个可执行文件,它的语法为:
```cmake
add_executable(<name> [WIN32] [MACOSX_BUNDLE]
[source1] [source2 ...])
```
其中,<name>为可执行文件的名称,可以自定义。[WIN32]用于指定构建Windows平台的可执行文件,[MACOSX_BUNDLE]用于指定构建macOS平台的可执行文件。后面的[source1] [source2 ...]用于指定可执行文件的源文件。
总结起来,add_library用于添加库文件,add_executable用于添加可执行文件。它们的主要区别在于生成的文件类型和使用的语法。
阅读全文