-target选项在CMake中意味着什么?

时间:2014-09-17 17:19:00

标签: cmake

C:\blah\duh\bin\Android>"C:\Program Files (x86)\CMake\bin\cmake.exe" --build . --target SysTest --use-stderr -- -j 8    

我有以上CMake构建命令。我明白了 - 建造。将从当前目录中的Makefile构建。但是选项-target SysTest和-j 8有什么作用呢?这是--build的CMake文档,但我承认我不理解--target的使用。

 --build <dir>
Build a CMake-generated project binary tree.

This abstracts a native build tool’s command-line interface with the following options:

<dir>          = Project binary directory to be built.
--target <tgt> = Build <tgt> instead of default targets.
--config <cfg> = For multi-configuration tools, choose <cfg>.
--clean-first  = Build target 'clean' first, then build.
                 (To clean only, use --target 'clean'.)
--use-stderr   = Ignored.  Behavior is default in CMake >= 3.0.
--             = Pass remaining options to the native tool.

1 个答案:

答案 0 :(得分:11)

如果我有

add_executable(hello hello.cpp)

add_executable(goodbye goodbye.cpp)

然后CMake为每个可执行文件创建“构建目标”。它还创建了其他构建目标,例如构建所有内容的“所有”构建目标。

默认情况下,如果未指定目标,则执行'all'目标,这意味着构建了hello和goodbye。

如果您只想构建其中一个目标,则可以指定要构建的目标。