我已经停留了一段时间了,我无法弄清楚如何让freeglut工作。我以为我知道它要求我做什么,所以我添加了set(prefix_path)行,但它没有做任何事情。我应该写我自己的freeglut-config.cmake还是什么?CMake在Clion的窗口中找不到freeglut
注:我使用的MinGW包freeglut从这个website
CMake的文件:
cmake_minimum_required(VERSION 3.7)
project(HW1)
set(CMAKE_CXX_STANDARD 11)
set(SOURCE_FILES Triangle.cpp)
set(CMAKE_PREFIX_PATH "C:/freeglut")
find_package(GLEW REQUIRED STATIC)
find_package(FREEGLUT REQUIRED)
find_package(OPENGL REQUIRED)
include_directories(${FREEGLUT_INCLUDE_DIRS} ${GLEW_INCLUDE_DIRS} ${OPENGL_INCLUDE_DIRS})
link_directories(${FREEGLUT_LIBRARY_DIRS} ${GLEW_LIBRARY_DIRS} ${OPENGL_LIBRARY_DIRS})
add_definitions(${FREEGLUT_DEFINITIONS} ${GLEW_DEFINITIONS} ${OPENGL_DEFINITIONS})
add_executable(HW1 ${SOURCE_FILES})
target_link_libraries(HW1 ${FREEGLUT_LIBRARIES} ${GLEW_LIBRARIES} ${OPENGL_LIBRARIES})
完整的错误:
CMake Error at CMakeLists.txt:8 (find_package):
By not providing "FindFREEGLUT.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "FREEGLUT",
but CMake did not find one.
Could not find a package configuration file provided by "FREEGLUT" with any
of the following names:
FREEGLUTConfig.cmake
freeglut-config.cmake
Add the installation prefix of "FREEGLUT" to CMAKE_PREFIX_PATH or set
"FREEGLUT_DIR" to a directory containing one of the above files. If
"FREEGLUT" provides a separate development package or SDK, be sure it has
been installed.
我不确定这有帮助,现在我得到一个不同的错误:https://hastebin.com/cuzohiwada.vbs。我用这个家伙find.cmake https://github.com/PDAL/PDAL/blob/master/cmake/modules/FindFreeGLUT.cmake – lbenedetto
看起来你的图书馆是**不兼容**与MinGW。请注意,对于glew函数有未定义的引用,这些与GLUT或freeglut无关。 – Tsyvarev
所以提供的windows二进制文件(http://glew.sourceforge.net/)将不起作用?我将不得不从源码编译我自己的? – lbenedetto