123*_*789 42 windows cmake visual-studio-2010
我正在尝试在发布模式下构建项目.默认情况下,它以调试模式构建.我将变量设置CMAKE_BUILD_TYPE为"Release" CMakeLists.txt.但它仍然在调试模式下构建项目.当我在CMake命令中将"Release"作为构建类型传递时,它仍然不起作用.
我正在使用的CMake命令是:
cmake -G"Visual Studio 10" -DCMAKE_BUILD_TYPE=Release
-H"source_path" -B"Build path"
Run Code Online (Sandbox Code Playgroud)
请提供解决方案.
小智 116
要在Windows上更改构建类型,必须在构建时完成:
cmake --build {DIR} --config Release
Run Code Online (Sandbox Code Playgroud)
默认情况下它是Debug.我还在寻找一种改变这种默认方式的方法.CMAKE_BUILD_TYPE当然不起作用,调整CMAKE_CONFIGURATION_TYPES也不起作用,显然出于同样的原因,它们只适用于Unix makefile,而不适用于Visual项目.
Mak*_*aks 30
我用Visual Studio 2015和cmake 3.3检查了它.
简短的回答
cmake --build {BUILD_DIR_PATH} --target ALL_BUILD --config {BUILD_TYPE}
Run Code Online (Sandbox Code Playgroud)
例
cmake --build . --target ALL_BUILD --config Release
Run Code Online (Sandbox Code Playgroud)
答案很长
cmake -G{GENERATOR_NAME} -B{BUILD_DIR_PATH} -H{SOURCE_DIR_PATH}
cmake --build {BUILD_DIR_PATH} --target ALL_BUILD --config {BUILD_TYPE}
Run Code Online (Sandbox Code Playgroud)
例
cmake -GVisual Studio 14 -Bbuild/win32/x86 -H.
cmake --build build/win32/x86 --target ALL_BUILD --config Release
Run Code Online (Sandbox Code Playgroud)
附加信息
"-G" - 指定生成器名称
"-B" - 指定构建文件夹的路径
"-H" - 指定源文件夹的路径
Com*_*sMS 20
您无法从命令行为Visual Studio设置默认构建类型.
CMake的Visual Studio生成器将生成四个标准配置文件(Debug,RelWithDebInfo,MinSizeRel和Release),您必须从VS中选择要构建的配置文件.这是因为有关活动配置的信息不是CMake生成的项目文件的一部分,而是.suoVS生成的部分文件.
如果要自动构建特定配置,请使用MSBuild而不是VS,它允许您在命令行上指定配置.
小智 5
尝试了以下方法,这些方法对我在 Windows 中以发布/调试模式构建二进制文件有用。
CMakeLists.txt在根文件中项目命令上方添加了以下行:
SET(CMAKE_CONFIGURATION_TYPES ${CMAKE_BUILD_TYPE} CACHE STRING "" FORCE)
Run Code Online (Sandbox Code Playgroud)
使用以下命令来设置发布模式配置:
cmake -DCMAKE_BUILD_TYPE=Release ..
Run Code Online (Sandbox Code Playgroud)
使用此命令在发布模式下构建相同的内容:
cmake --build . --config Release
Run Code Online (Sandbox Code Playgroud)
您也可以在调试模式下重复相同的过程,它可以工作。
ixS*_*Sci -22
像您一样使用它,但在根 cmake 文件中在项目关键字之前添加以下内容
SET(CMAKE_CONFIGURATION_TYPES ${CMAKE_BUILD_TYPE} CACHE STRING "" FORCE)
PROJECT(MY_PROJECT)#It's here just to show where you should add it.
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
50449 次 |
| 最近记录: |