ホームページ  >  記事  >  バックエンド開発  >  CMake での SDL2 ヘッダー インクルードの問題を解決するにはどうすればよいですか?

CMake での SDL2 ヘッダー インクルードの問題を解決するにはどうすればよいですか?

DDD
DDDオリジナル
2024-11-04 07:01:31773ブラウズ

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 ディレクトリを指します。

Post-Solution:

SDL2コードに #include "SDL.h" を記述するだけでヘッダーをインクルードできるようになりました。

以上がCMake での SDL2 ヘッダー インクルードの問題を解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。