簡體   English   中英

如何為 clion 編寫包含 glfw 的 cmake 腳本?

[英]How do I write the cmake script for clion to include glfw?

cmake_minimum_required(VERSION 3.15)
project(hello)
find_package(PkgConfig REQUIRED)
pkg_search_module(GLFW REQUIRED glfw3)
set(CMAKE_CXX_STANDARD 11)

add_executable(hello main.cpp)
INCLUDE_DIRECTORIES(${GLFW_INCLUDE_DIRS})
TARGET_LINK_LIBRARIES(hello ${GLFW_STATIC_LIBRARIES})

它告訴我

CMake Error at /home/suprateek/.local/share/JetBrains/Toolbox/apps/CLion/ch-0/193.5233.144/bin/cmake/linux/share/cmake-3.15/Modules/FindPkgConfig.cmake:696 (message):
  None of the required 'glfw3' found

當我嘗試構建它時。 我的 glfw 文件夾位於/usr/local/include/GLFW

AFAIK,glfw3 使用 CMake 作為構建系統,(src: packages.debian.org/fr/sid/amd64/libglfw3-dev/filelist )它使用現代 CMake,所以你不需要GLFW_INCLUDE_DIRS等......

在這個文件/usr/lib/cmake/glfw3/glfw3Targets.cmake (由/usr/lib/cmake/glfw3/glfw3Config.cmake加載)中,你會看到:

...
# Create imported target glfw
add_library(glfw SHARED IMPORTED)

set_target_properties(glfw PROPERTIES
  INTERFACE_COMPILE_DEFINITIONS "GLFW_DLL"
  INTERFACE_INCLUDE_DIRECTORIES "/usr/include"
)
...

所以你可以簡單地使用:

find_package(glfw3 REQUIRED)
...
target_link_libraries(Foo glfw) 

ps:和我之前的評論一樣

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM