Проблема с CMake C++

226
20 апреля 2018, 16:03

Здравствуйте, совсем недавно познакомился с CMake до этого работал с Make. И вот после моего краткого знакомство никак не могу линкануть библиотеку к проекту...

Структура проекта:

- \Dependecies
---- \Include
-------- \glfw
------------ \...
-------- \glew
------------ \...
---- \Libraries
-------- \glew32s.lib
-------- \glfw3.lib 
- \Sources
---- \main.cpp   
- CMakeLists.txt 

main.cpp

#include <iostream>
#include <glfw\glfw3.h> // не существует этого файла, хотя в Include он находится
int main() 
{
     std::cout << "Hello world" << std::endl;
     return EXIT_SUCCESS;
}

CmakeLists.txt

cmake_minimum_required (VERSION 3.8)
project ("FastEngine")
link_directories(${CMAKE_SOURCE_DIR}/Dependencies/Include/)
set (SOURCES Sources/main.cpp)
set (LIBRARIES ${CMAKE_SOURCE_DIR}/Dependencies/Libraries/glfw3.lib
               ${CMAKE_SOURCE_DIR}/Dependencies/Libraries/glew32s.lib)
add_executable (FastEngine ${SOURCES})
target_link_libraries (FastEngine ${LIBRARIES})

Хочу отметить, что собираю все на Windows под VS. Надеюсь что кто-нибудь поможет мне с этим...

Answer 1
cmake_minimum_required (VERSION 3.8)
project ("FastEngine")
set( CMAKE_CXX_STANDARD 14 )
set( CMAKE_INCLUDE_CURRENT_DIR ON )
include_directories(${CMAKE_SOURCE_DIR}/Dependencies/Include)
set (SOURCES Sources/main.cpp)
set (LIBRARIES ${CMAKE_SOURCE_DIR}/Dependencies/Libraries/glfw3.lib
               ${CMAKE_SOURCE_DIR}/Dependencies/Libraries/glew32s.lib)
add_executable (${PROJECT_NAME} ${SOURCES})
target_link_libraries (${PROJECT_NAME} ${LIBRARIES})

Такой вариант определённо должен работать.

READ ALSO
Подключиться к sqlite3 на C unable to open database file

Подключиться к sqlite3 на C unable to open database file

Подключаю sqlite в нативе на андроидВылетает ошибка unable to open database file

205
Ответить что значит последний вариант

Ответить что значит последний вариант

Имеет исходную строку в коде

234
Создание собственных сигналов и слотов

Создание собственных сигналов и слотов

Программа имеет считывать данные с консоли, используя класс QTextStream, и записывать их в линейный контейнер QStack до введения терминального 125±0

221
Как вынести переменную из класса?

Как вынести переменную из класса?

Имеется следующий код (рисует множество Мандельброта):

263