如何通过命令行查询CMake项目目标的构建配置信息?
CMake命令行查询构建信息的可行方案
你可以通过CMake命令行查询构建信息,虽然没有完全匹配你伪代码格式的单条便捷命令,但有几种实用方法可以获取my_executable目标的最终源文件列表:
1. 直接使用表达式求值命令(CMake 3.19+)
在./build目录下执行以下命令,直接获取分号分隔的源文件列表:
cmake -E evaluate_expression "TARGET_SOURCES(my_executable)"
输出示例:
main.c;file_one.c;file_two.c;file_three.c
2. 编写临时CMake脚本实现友好输出
创建一个名为query_sources.cmake的文件,内容如下:
get_target_property(SOURCES my_executable SOURCES) message("my_executable source files:") foreach(src ${SOURCES}) message("${src}") endforeach()
然后在./build目录下执行:
cmake -P query_sources.cmake
就能得到你期望的格式输出:
my_executable source files: main.c file_one.c file_two.c file_three.c
3. 借助Makefile生成器的命令(仅针对Unix Makefiles)
如果你使用的是Unix Makefiles生成器,也可以通过make命令查看编译目标时用到的源文件:
make -n my_executable
该命令会打印编译my_executable的具体命令,其中包含所有源文件路径,但输出信息较多,需要自行筛选。
内容的提问来源于stack exchange,提问作者sdbbs
相关产品推荐
相关产品推荐

