Ошибка CLion (Cmake, SFML)

106
26 июня 2019, 12:20

Ошибка: CMake Error at cmake_modules/FindSFML.cmake:355 (message): Could NOT find SFML (missing: SFML_AUDIO_LIBRARY SFML_NETWORK_LIBRARY SFML_GRAPHICS_LIBRARY SFML_WINDOW_LIBRARY SFML_SYSTEM_LIBRARY) Call Stack (most recent call first): CMakeLists.txt:8 (find_package)

-Помогите! При попытке запуска данная ошибка! Что это может значить?

CmakeLists: `cmake_minimum_required(VERSION 3.9)

         project(utitled6) 
         set(CMAKE_CXX_STANDARD 14) 
         set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}
         -IC:/SFML-2.4.2/include/SFML -LC:/SFML-2.4.2/lib") 
         set(SOURCE_FILES 
         main.cpp ) 
         set(CMAKE_MODULE_PATH
         ${CMAKE_CURRENT_SOURCE_DIR}/cmake_modules) 
         find_package(SFML 
         REQUIRED COMPONENTS Audio Network Graphics Window System)
         include_directories(${SFML_INCLUDE_DIR}) 
         add_executable(utitled6 
         main.cpp) 
         target_link_libraries(utitled6 sfml-audio sfml-network 
         sfml-graphics sfml-window sfml-system)`
Answer 1

Использую такой конфиг и всё работает. Зачем добавлять IC?

add_executable(sfml_test ${SOURCE_FILES})
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/Modules" ${CMAKE_MODULE_PATH})
set(SFML_STATIC_LIBRARIES TRUE) #SFML_STATIC
find_package(SFML 2.4 REQUIRED COMPONENTS
             graphics window system audio)
include_directories(${SFML_INCLUDE_DIR})
target_link_libraries(sfml_test ${SFML_LIBRARIES})
Answer 2

СВЕРШИЛОСЬ! Я всё-таки это сделал. Краткая инструкция:

1.Скачиваем MinGW_makeFiles_custom (https://osdn.net/projects/mingw/downloads/68260/mingw-get-setup.exe/).

2.В Clion заходим в File -> Settings -> Toolchain -> Выбираем вместо "Visual Studio" - "MinGW". (Оно автоматически найдет компиляторы).

3.Перезагружаем Clion и в CMakeLists.txt вставляем:

cmake_minimum_required(VERSION 3.6)
set(PROJECT_NAME cpp1)
project(${PROJECT_NAME})
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17")
set(SOURCE_FILES main.cpp)
set(SFML_DIR "${PROJECT_SOURCE_DIR}/SFML-2.4.2")
set(SFML_ROOT ${SFML_DIR})
set(CMAKE_MODULE_PATH "${SFML_DIR}/cmake/Modules" ${CMAKE_MODULE_PATH})
find_package(SFML 2 COMPONENTS system window graphics audio network REQUIRED)
include_directories(${SFML_INCLUDE_DIR})
add_executable(${PROJECT_NAME} ${SOURCE_FILES})
target_link_libraries(${PROJECT_NAME} ${SFML_LIBRARIES})

Где set(SFML_DIR "${PROJECT_SOURCE_DIR}/SFML-2.4.2") это путь к SFML, а cpp1 - это имя вашего проекта.

4.Перезагружаем (Reload Changes).

5.Готово!

READ ALSO
Как сделать замену спомощью регулярки в Qt5 не все выражение, а лишь часть?

Как сделать замену спомощью регулярки в Qt5 не все выражение, а лишь часть?

Есть LaTeX документ, его считываю текстом и ищу по входным заранее определенным данным key_names вхождения типа: \newcommand{\ValueAxA}[1][-]{#1} ValueAxA - это key а значение...

165
Ошибка при обращении к API Яндекс.Директ

Ошибка при обращении к API Яндекс.Директ

Пытаюсь написать программу, которая отправляет POST запрос на ЯндексДирект

149
Кастомзация карты Google Maps в приложении

Кастомзация карты Google Maps в приложении

Как на карте Google Maps выделять область и создавать свои маркеры по аналогии с рисунком? Есть ли где-то документация по поводу этого

127