Where would I go within CMakeLists.txt in order to change the name of the generated file?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
Here's a simple CMakeLists.txt
cmake_minimum_required(VERSION 2.6 FATAL_ERROR)
project(demo)
add_executable(hello hello.cpp)
This CMakeLists.txt compiles a hello.cpp file to an executable named hello. You can name the executable anything by using the add_executable
statement.
add_executable(<executable-name> <source1> <source2> ...)
回答2:
For an executable target see target properties OUTPUT_NAME and SUFFIX. The actual output name if a combination of OUTPUT_NAME
.SUFFIX
with
OUTPUT_NAME
defaulting to the target's nameSUFFIX
defaulting to- whatever is defined in CMAKE_EXECUTABLE_SUFFIX for your platform (e.g.
.exe
on Windows platforms) - if the suffix is empty the compiler might add an extension (see Default file extension of the executable created by g++ under Cygwin vs Linux)
- whatever is defined in CMAKE_EXECUTABLE_SUFFIX for your platform (e.g.
So the following example would override both defaults:
add_executable(a ...)
set_target_properties(
a
PROPERTIES
OUTPUT_NAME "myname"
SUFFIX ".myext"
)
Would generate myname.myext
for target a
.
For more details e.g. take a look at adding program suffix.