>백엔드 개발 >C++ >CMake의 SDL2 헤더 포함 문제를 해결하는 방법은 무엇입니까?

CMake의 SDL2 헤더 포함 문제를 해결하는 방법은 무엇입니까?

DDD
DDD원래의
2024-11-04 07:01:31831검색

How to Resolve SDL2 Header Inclusion Problems with CMake?

CMake로 SDL2 포함 문제 해결

문제:

CLion에서 SDL2 프로젝트를 개발할 때 "#include < ;SDL.h>" 필요한 헤더 파일을 찾을 수 없습니다.

해결책:

Linux 시스템의 경우:

  1. CMake 버전을 확인하세요. 3.7 이상이 설치되어 있습니다.
  2. CMakeLists.txt 파일에 다음 줄을 추가하세요.
<code class="cmake">find_package(SDL2 REQUIRED)
include_directories(SDL2Test ${SDL2_INCLUDE_DIRS})

add_executable(SDL2Test Main.cpp)
target_link_libraries(SDL2Test ${SDL2_LIBRARIES})</code>

Windows 시스템의 경우:

  1. SDL2 개발 패키지를 다운로드하고 추출합니다.
  2. 추출된 디렉터리에 다음 내용이 포함된 sdl-config.cmake라는 파일을 만듭니다.
<code class="cmake">set(SDL2_INCLUDE_DIRS "${CMAKE_CURRENT_LIST_DIR}/include")

# Support both 32 and 64 bit builds
if (${CMAKE_SIZEOF_VOID_P} MATCHES 8)
  set(SDL2_LIBRARIES "${CMAKE_CURRENT_LIST_DIR}/lib/x64/SDL2.lib;${CMAKE_CURRENT_LIST_DIR}/lib/x64/SDL2main.lib")
else ()
  set(SDL2_LIBRARIES "${CMAKE_CURRENT_LIST_DIR}/lib/x86/SDL2.lib;${CMAKE_CURRENT_LIST_DIR}/lib/x86/SDL2main.lib")
endif ()

string(STRIP "${SDL2_LIBRARIES}" SDL2_LIBRARIES)</code>
  1. CMake-GUI 애플리케이션에서 "SDL2_DIR" 변수로 이동하여 추출된 SDL2 디렉터리를 지정합니다.

사후 솔루션:

SDL2 이제 코드에 #include "SDL.h"를 작성하기만 하면 헤더를 포함할 수 있습니다.

위 내용은 CMake의 SDL2 헤더 포함 문제를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.