> 백엔드 개발 > C++ > CMake 기반 프로젝트에 SDL2 헤더를 어떻게 포함할 수 있나요?

CMake 기반 프로젝트에 SDL2 헤더를 어떻게 포함할 수 있나요?

Barbara Streisand
풀어 주다: 2024-11-02 22:13:02
원래의
748명이 탐색했습니다.

How can I include SDL2 headers in a CMake-based project?

CMake 기반 프로젝트에 SDL2 헤더 포함

이 질문은 SDL2 헤더 포함 문제를 다룹니다(#include "SDL.h"). 다음을 사용하여 CLion에서 SDL2 프로젝트를 생성할 때 CMake.

솔루션

제공되는 솔루션은 다양한 운영 체제에 대해 두 가지 접근 방식을 제공합니다.

Linux

Linux의 경우 최신 CMake 버전(예: 3.7)을 사용하면 충분합니다. CMake의 내장 find_package 기능은 SDL2 헤더 및 라이브러리를 찾아 포함할 수 있습니다.

<code class="cmake">cmake_minimum_required(VERSION 3.7)
project(SDL2Test)

find_package(SDL2 REQUIRED)
include_directories(SDL2Test ${SDL2_INCLUDE_DIRS})

add_executable(SDL2Test Main.cpp)
target_link_libraries(SDL2Test ${SDL2_LIBRARIES})</code>
로그인 후 복사

Windows

Windows의 경우 다음 단계를 따르세요.

  1. SDL2 개발 패키지를 다운로드하세요.
  2. 압축 풀기 선택한 위치.
  3. 추출된 디렉터리에 다음 내용으로 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 디렉터리에 추가합니다.
  2. 재구성 CMake.

이 단계 후에 #include "SDL.h"를 사용하여 SDL2 헤더를 포함할 수 있습니다.

위 내용은 CMake 기반 프로젝트에 SDL2 헤더를 어떻게 포함할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿