Это потому, что FindSDL_MIXER.cmake не устанавливает переменную библиотеки.В cmake 3.13 есть обновленный FindSDL_mixer.cmake, который устанавливает это правильно, вы можете использовать его в качестве примера.В частности, вам нужна такая строка в FindSDL_MIXER.cmake, чтобы найти библиотеку и установить переменную.
find_library(SDL_MIXER_LIBRARY
NAMES SDL2_mixer
HINTS
ENV SDLMIXERDIR
ENV SDLDIR
PATH_SUFFIXES lib
)
Я также заметил, что SDL_MIXER_INCLUDE_DIR
, по-видимому, не используется в CMakeLists.txt дляцель.Просто случается так, что он, вероятно, находится в том же месте, что и некоторые другие включаемые файлы заголовков.
Также вы, вероятно, захотите переименовать файл в FindSDL2_MIXER.cmake и изменить соответствующий FIND_PACKAGE(SDL2_MIXER)
.Я не совсем уверен, используется ли опубликованный FindSDL_MIXER.cmake, потому что похоже, что find_path
не является синтаксически правильным, в нем отсутствует имя файла, который будет найден.