我想将我的项目从Visual Studio解决方案转换为使用cmake构建并使用makefile进行编译
这是一个两部分的问题
现在CMakeLists.txt是:
cmake_minimum_required(VERSION 3.13.0)
project(Project2015 CXX)
add_executable(Project Source/main.cpp)
当我从构建目录中运行cmake ..
时,它将生成* .vcxproj和* .sln文件,但是没有makefile。如何更改CMakeLists以生成Makefile?
对于Windows,等效于gcc
的命令行编译器是什么?以及如何将此编译器设置为CMake和生成的Makefile的目标?了解构建工具https://docs.microsoft.com/en-us/cpp/build/walkthrough-compile-a-c-program-on-the-command-line?view=vs-2019我是否需要针对cl.exe
编译器?这可以与Cmake和Makefiles一起使用吗?我在网上阅读这些命令行标志将设置编译器,我如何将它们添加到CMakeLists.txt以自动使用]
DCMAKE_C_COMPILER=cl
DCMAKE_C_COMPILER_FORCED=ON
DCMAKE_CXX_COMPILER=cl
DCMAKE_CXX_COMPILER_FORCED=ON
DCMAKE_BUILD_TYPE=Debug
DCMAKE_INSTALL_PREFIX=%CFITSIO_DIR%
G"NMake Makefiles"
您已使用CMake的构建工具模式从命令行进行构建。
使用Visual Studio 2019将项目配置为64位版本后,例如与
cmake -S <sourcedir> -B <builddir> -G "Visual Studio 16 2019" -A x64
您会跑步
cmake --build <builddir> --target ALL_BUILD --config Release
有关其他选项(尤其是最小输出),请参见here