CMake,VSCode,vcpkg配置Vulkan开发环境
CMake, VSCode, vcpkg配置Vulkan开发环境
首先需要配置好VSCode, vcpkg, CMake以及编译器。
VSCode需要安装CMake, CMake Tools插件。
# CMake基础配置
按
Ctrl
+Shift
+P
,选择CMake配置,选择你所使用的编译器,或者点击Scan for kits
搜索已安装的编译器。按
Ctrl
+Shift
+P
,选择C/C++配置,配置编译器和标准。选择后右下角询问是否创建CMake文件,点击
Create
创建。创建过程中会询问项目名称,项目类型。创建完成会自动生成一个CMakeLists.txt文件,内容如下:
1
2
3
4
5
6
7
8
9
10
11cmake_minimum_required(VERSION 3.0.0)
project(test VERSION 0.1.0)
include(CTest)
enable_testing()
add_executable(test main.cpp)
set(CPACK_PROJECT_NAME ${PROJECT_NAME})
set(CPACK_PROJECT_VERSION ${PROJECT_VERSION})
include(CPack)使用通配符编译所有源码
在
enable_testing()
下面写file(GLOB SOURCE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp)
将
add_executable(test main.cpp)
后面的main.cpp
改成${SOURCE_PATH}
您也可以顺便把前面的项目名称改成
${PROJECT_NAME}
这样将绑定
project()
里面的项目名。修改完您的文件大概是这样:
1
2
3
4
5
6
7
8
9
10
11
12cmake_minimum_required(VERSION 3.0.0)
project(test VERSION 0.1.0)
include(CTest)
enable_testing()
file(GLOB SOURCE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp)
add_executable(${PROJECT_NAME} ${SOURCE_PATH})
set(CPACK_PROJECT_NAME ${PROJECT_NAME})
set(CPACK_PROJECT_VERSION ${PROJECT_VERSION})
include(CPack)保存文件将自动配置。
至此您已经完成了CMake基本配置。您可以点击下面的Build构建,点击右边的虫子或播放键编译运行。
# 通过vcpkg配置Vulkan
虽然,但是这玩意确实可以用非msvc编译器
配置vcpkg
您需要添加个环境变量来方便使用。
找到
vcpkg.exe
的根目录添加进去即可。点开VSCode的 设置 -> 拓展 -> CMake Tools -> Configure Args ->添加项
输入
-DCMAKE_TOOLCHAIN_FILE=[你的vcpkg位置]/scripts/buildsystems/vcpkg.cmake
确定vcpkg安装包
使用
vcpkg search [包名称]
来搜索包。使用
vcpkg install [包名称][版本]
来安装包。例如:
输入
vcpkg install glfw3:x64-windows
安装64位Windows版本的GLFW输入
vcpkg install glm:x64-windows
安装64位Windows版本的GLM如果不输入
:64-windows
将默认安装x86版本。其他命令
remove [包][版本]
移除包list
列出所有已安装的包CMake添加库
安装完包之后,vcpkg会给出CMake代码:
1
2
3
4
5glm provides CMake targets:
# this is heuristically generated, and may not be correct
find_package(glm CONFIG REQUIRED)
target_link_libraries(main PRIVATE glm::glm)复制进
CMakeLists.txt
把main
修改成您的项目名称或者${PROJECT_NAME}
保存配置,写点代码运行试试,如果不能运行可以尝试把
PRIVATE
删掉。添加include目录
1
2
3
4target_include_directories (${PROJECT_NAME} PUBLIC
${PROJECT_BINARY_DIR}
${Vulkan_INCLUDE_DIRS}
)${Vulkan_INCLUDE_DIRS}
添加Vulkan的include目录。${PROJECT_BINARY_DIR}
貌似写上这个#include "xxx.hpp"
引用项目的hpp/h文件有代码提示?
以上全部完成你的 CMakeLists.txt
大概是这样的
1 | cmake_minimum_required(VERSION 3.0.0) |
如果代码报红可以试试重启VSCode
复制测试代码试试:
1 |
|
如果成功打开窗口,则配置完成。