如何使用CMake将输出二进制文件的名称更改为非a.out?

Vin*_*ore 2 cmake

我将在CMakeLists.txt中去哪里以更改生成文件的名称?

Flo*_*ian 6

有关可执行目标,请参见目标属性OUTPUT_NAMESUFFIX。实际输出名称(如果是的组合)OUTPUT_NAMESUFFIX

因此,以下示例将覆盖两个默认值:

add_executable(a ...)
set_target_properties(
    a 
    PROPERTIES 
        OUTPUT_NAME "myname"
        SUFFIX ".myext"
)
Run Code Online (Sandbox Code Playgroud)

myname.myext将为目标生成a

有关更多详细信息,例如,看看添加程序后缀


Lak*_*arg 3

这是一个简单的 CMakeLists.txt

cmake_minimum_required(VERSION 2.6 FATAL_ERROR)
project(demo)

add_executable(hello hello.cpp)
Run Code Online (Sandbox Code Playgroud)

此 CMakeLists.txt 将 hello.cpp 文件编译为名为 hello 的可执行文件。您可以使用该add_executable语句将可执行文件命名为任何名称。

add_executable(<executable-name> <source1> <source2> ...)
Run Code Online (Sandbox Code Playgroud)