Мне нужно добавить внешнюю библиотеку в мой проект.Вот структура проекта:
/- src/
- my source files here…
|- dist/
|- FLTK
|- lib/
|- libfltk.a
|- libfltk_forms.a
|- FL
|- build/
|- main.cpp
Вот мой CMakeLists.txt
cmake_minimum_required(VERSION 2.8)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -std=c++17")
find_library(LibFltk ${CMAKE_CURRENT_SOURCE_DIR}/dist/FLTK/lib/libfltk.a)
find_library(LibFltk_Forms ${CMAKE_CURRENT_SOURCE_DIR}/dist/FLTK/lib/libfltk_forms.a)
if(APPLE)
find_library(COCOA Cocoa)
endif()
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/dist/FLTK)
add_executable(${CMAKE_CURRENT_SOURCE_DIR}/build/main ${CMAKE_CURRENT_SOURCE_DIR}/main.cpp)
target_link_libraries(${CMAKE_CURRENT_SOURCE_DIR}/build/main ${LibFltk} ${COCOA})
Сообщение об ошибке:
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
LibFltk
linked by target "keyplay" in directory /Users/coder/Desktop/sandbox/keyplay
- Настройка неполная, произошли ошибки!
Когда я пытаюсь скомпилировать свой проект из терминала, он работает отлично.Вот как я это делаю:
g++ -std=c++17 -c main.cpp -I dist/FLTK \
&& g++ main.o -o main -L dist/FLTK/lib -lfltk_forms \
-lfltk_images \
-lfltk \
-lfltk_gl \
-framework Cocoa \
&& ./main
Что не так в моем CMakeLists.txt?
Спасибо.