我是靠谱客的博主 自觉早晨,这篇文章主要介绍VulkanLearning - 环境搭建:使用CLion+cmake链接第三方库,现在分享给大家,希望可以做个参考。

不知从何时开始,突然不想再打开VS写东西了(这人pass有病(很大一部分原因是找不到如何添加VC工程模板(说白了就是一条菜狗)))加上正要开始学习Vulkan以及一些相关的图形学知识,在工程编译方面要学习的也有很多,诸如makefile,cmake云云,这次在配置CLion+cmake的vulkan simple demo编译环境时遇到了不少问题,由于官方教程和google里都是直接vs安排上了,这里先开始瞎捣鼓cmake添加依赖,编辑项目信息包括源文件,编译器等的一些用法,仅做个记录,后期争取不断改进。
ps:make之类的的代码建议用php高亮,原因?$ $ $ $ $ $ $ $ $ $ $ $ $…

项目结构(加载了SDL2, GLM, GLFW和Vulkan)
在这里插入图片描述
CmakeList.txt傻瓜ver0.810(路径自行修改,我还没太搞懂CMake判断包是否安装的机制是什么?添加到了环境变量?)

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# CMake 最低要求版本 cmake_minimum_required(VERSION 3.15) # 项目信息 project(VulkanDemo) # 获取OS信息 if (CMAKE_HOST_WIN32) set(WINDOWS 1) elseif(CMAKE_HOST_APPLE) set(MACOS 1) elseif(CMAKE_HOST_UNIX) set(LINUX 1) endif() # 旁侧设定 set(CMAKE_CXX_STANDARD 20) #SET(CMAKE_CXX_COMPILER "clang++") # 设置部分源文件的目录信息 ## 相当于设置INCLUDE_DIRECTORIES为include的路径 include_directories(./include/) aux_source_directory(./src/VkApp/ SOURCES) # 指定生成目标 add_executable(VulkanDemo ./src/main.cpp ${SOURCES}) # 添加依赖 ## SDL2 set(SDL2_PATH A:/Depending/SDL2-2.0.10/x86_64-w64-mingw32) set(SDL2_LIBS_DIR ${SDL2_PATH}/lib) set(SDL2_INCLUDE_DIR ${SDL2_PATH}/include) set(SDL2_LIBRARIES -L${SDL2_LIBS_DIR} -lmingw32 -lSDL2main -lSDL2 )#-mwindows) #use this to enable debug information console include_directories(${SDL2_INCLUDE_DIR}) ### static target_link_libraries(VulkanDemo ${SDL2_LIBRARIES}) ### dynamic (SDL2.dll) --copy to execute path link_directories(${SDL2_PATH}/bin) ## GLM set(GLM_INCLUDE_DIRS A:/Depending/glm/) include_directories(${GLM_INCLUDE_DIRS}) ## GLFW set(GLFW_INCLUDE_DIRS A:/Depending/glfw-3.3.bin.WIN64/include/) set(GLFW_LIBRARIES A:/Depending/glfw-3.3.bin.WIN64/lib-mingw-w64/libglfw3.a) include_directories(${GLFW_INCLUDE_DIRS}) target_link_libraries(VulkanDemo ${GLFW_LIBRARIES}) # Boost set(Boost_INCLUDE_DIR A:/Depending/boost_1_72_0/) find_package(Boost REQUIRED) include_directories(${Boost_INCLUDE_DIRS}) target_link_libraries(VulkanDemo ${Boost_LIBRARIES}) ## Vulkan find_package(Vulkan REQUIRED FATAL_ERROR) include_directories(${Vulkan_INCLUDE_DIRS}) target_link_libraries(VulkanDemo ${Vulkan_LIBRARIES})

最后

以上就是自觉早晨最近收集整理的关于VulkanLearning - 环境搭建:使用CLion+cmake链接第三方库的全部内容,更多相关VulkanLearning内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(94)

评论列表共有 0 条评论

立即
投稿
返回
顶部