VS2022/2019/2017 + CMakeLists 编译c++

一、使用vs2017以上版本打开CMakelists文件

VS2022/2019/2017 + CMakeLists 编译c++_第1张图片

VS2022/2019/2017 + CMakeLists 编译c++_第2张图片

二、单击生成 或  按ctrl+s 保存CMakelist.txt 会自动生成缓存

VS2022/2019/2017 + CMakeLists 编译c++_第3张图片

 三、选择要启动项目  并单击运行

VS2022/2019/2017 + CMakeLists 编译c++_第4张图片

 四、 运行结果

VS2022/2019/2017 + CMakeLists 编译c++_第5张图片

五、CMake不依赖 .sln 或 .vcxproj 文件 

VS2022/2019/2017 + CMakeLists 编译c++_第6张图片

1.外部 CMakelists.txt 文件 

cmake_minimum_required (VERSION 3.8)

project ("LearnD3D12")

# 包含子项目。
add_subdirectory ("demo")
add_subdirectory ("demo1_Triangle")
add_subdirectory ("demo2_Resources")
add_subdirectory ("demo3")

2.内部 CMakelists.txt 文件

add_definitions("-DUNICODE" "-D_UNICODE")

file(GLOB_RECURSE  SRC_FILES   CMAKE_CONFIGURE_DEPENDS  *.h *.cpp )
file(GLOB_RECURSE  HLSL_FILES  CMAKE_CONFIGURE_DEPENDS  *.hlsl)
file(GLOB_RECURSE  RES_FILES   CMAKE_CONFIGURE_DEPENDS  *.rc *.ico )

file(COPY ${HLSL_FILES} DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/hlsl )

add_executable (demo WIN32 ${SRC_FILES} ${HLSL_FILES} ${RES_FILES})

target_link_libraries(demo "dxguid.lib" "dxgi.lib"  "d3d12.lib" "d3dcompiler.lib")

 VS采用CMakeLists生成c/c++项目更加灵活。cmake比较复杂,熟悉常用模板后比较容易上手。

你可能感兴趣的:(CMake,c++,开发语言)