首页 > 解决方案 > CLion - 未找到 SDL 库 Mac

问题描述

我最近开始在 Clion 上编程,我想用 C 语言创建一个 Snake 游戏。我已经通过 Homebrew 下载了所有必要的 SDL 库,并将这些文件复制到了我的Developer/CommandLineTools/usr/文件夹中。我的 C 编译器在这个文件夹中。我曾尝试使用CMakeLists.txt,但无法使其正常工作。


cmake_minimum_required(VERSION 3.17)
project(test)
set(CMAKE_C_STANDARD 99)

INCLUDE(FindPkgConfig)

pkg_check_modules(SDL2 REQUIRED sdl2)
pkg_check_modules(SDL2_IMG REQUIRED sdl2_image)
pkg_check_modules(SDL2_TTF REQUIRED sdl2_ttf)
pkg_check_modules(SDL2_MIXER REQUIRED sdl2_mixer)

find_package(SDL2 REQUIRED)
find_package(SDL2_IMG REQUIRED)
find_package(SDL2_TTF REQUIRED)
find_package(SDL2_MIXER REQUIRED)

add_executable(test ${PROJECT_SOURCE_DIR}/src/main.c)

include_directories(${PROJECT_SOURCE_DIR}/assets)
include_directories(${SDL2_INCLUDE_DIRS}
        ${SDL2_IMG_INCLUDE_DIRS}
        ${SDL2_TTF_INCLUDE_DIRS}
        ${SDL2_MIXER_INCLUDE_DIRS})

link_directories(${SDL2_LIBRARY_DIRS}
        ${SDL2_IMG_LIBRARY_DIRS}
        ${SDL2_TTF_LIBRARY_DIRS}
        ${SDL2_MIXER_LIBRARY_DIRS})

target_link_libraries (test
        ${SDL2_LIBRARIES}
        ${SDL2_IMG_LIBRARIES}
        ${SDL2_TTF_LIBRARIES}
        ${SDL2_MIXER_LIBRARIES})

我在stackoverflow上查看了许多类似的问题,但似乎没有一个能解决我的问题。如果我包含find_package,我会收到此错误消息: Could not find a package configuration file SDL2_IMG等等。如果我把它排除在外,我会得到这个library not found for -lSDL2_image

标签: cmacossdl-2clion

解决方案


  1. sdl2 库应单独下载。混音器,ttf等

  2. 我在 XCode 上使用 SDL2 没有问题(简单)

  3. 而不是编译器位置,我更喜欢项目位置。

  4. 顺便说一句,我将头文件表示为路径

我希望这些对你有所帮助。


推荐阅读