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判斷包是否安裝的機制是什麼?添加到了環境變量?)

# 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})
發佈了19 篇原創文章 · 獲贊 7 · 訪問量 5158
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章