2016-01-10 2 views
0

Я хочу добавить this library в свой проект. Однако он не поставляется с предварительно скомпилированными файлами. Он просит меня сама создать библиотеку с cmake, с которой я не знаком. Одной из его зависимостей является SDL2. Поэтому я загружаю папку библиотек разработки sdl2. В cmake я нажимаю configure и выбираю генератор. После нескольких секунд обработки, появляется всплывающее окно показывает ошибку: Error in configuration process project files may be invalidCMake не смог найти SDL2

И это то, что экран журнала показывает:

The C compiler identification is MSVC 18.0.40629.0
The CXX compiler identification is MSVC 18.0.40629.0
Check for working C compiler using: Visual Studio 12 2013
Check for working C compiler using: Visual Studio 12 2013 -- works
Detecting C compiler ABI info
Detecting C compiler ABI info - done
Check for working CXX compiler using: Visual Studio 12 2013
Check for working CXX compiler using: Visual Studio 12 2013 -- works
Detecting CXX compiler ABI info
Detecting CXX compiler ABI info - done
Detecting CXX compile features
Detecting CXX compile features - done
CMake Error at C:/Program Files (x86)/CMake/share/cmake-3.4/Modules/FindPackageHandleStandardArgs.cmake:148 (message): Could NOT find SDL2 (missing: SDL2_INCLUDE_DIR SDL2_LIBRARY)
Call Stack (most recent call first):

C:/Program Files (x86)/CMake/share/cmake-3.4/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE) cmake/FindSDL2.cmake:18 (FIND_PACKAGE_HANDLE_STANDARD_ARGS) CMakeLists.txt:30 (FIND_PACKAGE)

Configuring incomplete, errors occurred!
See also "E:/game dev/libraries/libSDL2pp-master/build/CMakeFiles/CMakeOutput.log".

Может кто-нибудь сказать мне, что делать? Я не уверен, что поступаю правильно. Спасибо.

+0

У вас должен быть установлен SDL2 (вы сделали), и вы должны сказать CMake, где его искать. Просто отредактируйте переменные, указанные в выводе (SDL2_INCLUDE_DIR SDL2_LIBRARY). – usr1234567

+0

Что вы понимаете, редактируя переменные? Вы можете объяснить немного больше деталей? – Rickie

+0

С CMake-Gui вы получаете список переменных. Или отредактируйте CMakeCache.txt внутри вашего каталога сборки. – usr1234567

ответ

0

cmake не поставляется с модулем для поиска sdl2 по умолчанию. Скорее всего, это причина, по которой вы предоставили свои собственные в cmake/FindSDL2.cmake. Поскольку вы находитесь в окнах, скорее всего, вам нужно установить переменную окружения, указывающую на каталог установки sdl2 (но это действительно то, что зависит от используемого вами FindSDL2.cmake).

Смежные вопросы