我正试图在我的项目中使用fltk库,但我遇到了一些麻烦。这是我的CMakeLists.txt文件:
cmake_minimum_required(VERSION 3.12)
project(pp)
set(CMAKE_CXX_STANDARD 14)
add_executable(pp main.cpp)
FIND_PACKAGE(FLTK REQUIRED)
FIND_PACKAGE(GTK REQUIRED)
TARGET_LINK_LIBRARIES(pp ${FLTK_LIBRARIES})
TARGET_LINK_LIBRARIES(pp ${GTK_LIBRARIES})FLTK版本:1.3.4
Cmake版本:3.7.2
我已经在我的/usr/local中安装了fltk库
包含文件位于/usr/local/ Include /FL中。
我看到FindFLTK.cmake查找以下文件: FL/Fl.h或FL/Fl.H,FL/Fl.h位于/usr/local/include/FL中,因此可以找到它。
以下是错误消息:
找不到FLTK (缺失: FLTK_INCLUDE_DIR)
你有什么办法解决这个问题吗?
更新
当前版本的CMakeLists.txt
cmake_minimum_required(VERSION 3.7.2)
project(pp)
set(CMAKE_CXX_STANDARD 14)
add_executable(pp main.cpp)
target_include_directories(pp PRIVATE /usr/local/include/FL)
set (LIBRARIES fltk Xrender Xcursor Xfixes Xext Xft fontconfig Xinerama pthread dl m X11)
message(STATUS mess: ${CMAKE_MODULE_PATH})
target_link_libraries(pp ${LIBRARIES})'在这个配置中,我可以编译并链接可执行文件,但是为什么使用FIND_PACKAGE的配置不能工作呢?我应该去哪里找窃听器?
发布于 2021-02-18 19:59:14
可能是安装不好的库。我刚刚从GitHub源代码中安装了一个新的,CMake配置了cmake -G "MinGW Makefiles" .,然后是make和make install,然后将其安装到编译器库中。
之后,包含Could NOT find FLTK (missing: FLTK_INCLUDE_DIR)的错误在另一个项目的编译中消失了。我想,cmake错误报告并不是那么严格和明确,也就是说,这个错误意味着FindFLTK.cmake中的一些异常,而不是关于缺少FLTK_INCLUDE_DIR的。
https://stackoverflow.com/questions/53002009
复制相似问题