set_target_properties中输入参数 PROPERTIES是什么意思,还能输入什么参数
时间: 2023-04-05 10:03:16 浏览: 123
PROPERTIES 是用来设置目标属性的参数,可以设置目标的编译选项、链接选项、输出文件名等属性。除了 PROPERTIES,还可以输入其他参数,如 LINK_LIBRARIES、COMPILE_OPTIONS 等,用来设置目标的链接库、编译选项等。
相关问题
set_target_properties什么意思
set_target_properties是CMake中的一个命令,用于设置目标属性。在CMake中,一个目标可以是一个可执行程序、库文件或者其他类型的输出文件。set_target_properties命令可以用于改变这些目标的属性,例如编译器选项、链接选项、输出文件名、输出路径等等。这个命令的语法如下:
```
set_target_properties(target1 target2 ... PROPERTIES prop1 value1 prop2 value2 ...)
```
其中,target1、target2等表示需要设置属性的目标名称,PROPERTIES表示设置属性的关键字,prop1、prop2等表示需要设置的属性名称,value1、value2等表示需要设置的属性值。
set_target_properties的参数
`set_target_properties()`函数用来设置目标的属性,其中常用的参数有:
- `target`:要设置属性的目标名称,可以是一个库、可执行文件或自定义目标。
- `PROPERTIES`:属性列表的开始标记,后面跟着一系列属性和对应的值。
- `PROPERTY`、`ADD_PROPERTY`:用来设置单个属性的函数,可以省略`PROPERTIES`关键字,例如:
```
set_target_properties(myTarget PROPERTIES CXX_STANDARD 11)
set_target_properties(myTarget PROPERTY CXX_STANDARD 11)
set_target_properties(myTarget ADD_PROPERTY CXX_STANDARD 11)
```
除了以上参数,`set_target_properties()`函数还可以接受其它一些参数,例如:
- `VERSION`和`SOVERSION`:设置库的版本号和API版本号。
- `PUBLIC_HEADER`、`PRIVATE_HEADER`和`INTERFACE_HEADER`:设置库的头文件路径。
- `OUTPUT_NAME`:设置生成的目标文件名。
- `ARCHIVE_OUTPUT_DIRECTORY`、`LIBRARY_OUTPUT_DIRECTORY`和`RUNTIME_OUTPUT_DIRECTORY`:设置库文件和可执行文件的输出路径。
- `COMPILE_FLAGS`和`LINK_FLAGS`:设置编译和链接时的额外编译选项。
具体的参数列表和用法可以参考CMake文档。
阅读全文