Maison > développement back-end > C++ > le corps du texte

Comment résoudre les problèmes d'inclusion d'en-tête SDL2 avec CMake ?

DDD
Libérer: 2024-11-04 07:01:31
original
772 Les gens l'ont consulté

How to Resolve SDL2 Header Inclusion Problems with CMake?

Résoudre les problèmes d'inclusion SDL2 avec CMake

Problème :

Lors du développement d'un projet SDL2 dans CLion, "#include < ;SDL.h>" Impossible de trouver le fichier d'en-tête nécessaire.

Solution :

Pour les systèmes Linux :

  1. Assurez-vous que la version CMake 3.7 ou version ultérieure est installé.
  2. Ajoutez les lignes suivantes à votre fichier 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>
Copier après la connexion

Pour les systèmes Windows :

  1. Téléchargez et extrayez le package de développement SDL2.
  2. Créez un fichier nommé sdl-config.cmake dans le répertoire extrait avec le contenu suivant :
<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>
Copier après la connexion
  1. Dans l'application CMake-GUI, accédez à la variable "SDL2_DIR" et pointez-la vers le répertoire SDL2 extrait.

Post-Solution :

SDL2 les en-têtes peuvent désormais être inclus simplement en écrivant #include "SDL.h" dans votre code.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!