我在使用 GLEW 构建 CMake 项目时遇到问题。在解决了本网站上具有相似名称的问题后,我找到了以下 CmakeLists.txt:
set(GLEW_DIR "ext/glew-2.2.0")
set(GLEW_INCLUDE_DIR "ext/glew-2.2.0/include")
set(GLEW_LIBRARY "ext/glew-2.2.0/lib/Release/Win32")
set(GLEW_LIBRARIES "ext/glew-2.2.0/lib/Release/x64/glew32")
# Find OpenGL package (required for GLEW)
#find_package(OpenGL REQUIRED)
find_package(GLEW REQUIRED)
target_link_libraries(engine PUBLIC kgfw PUBLIC glfw PUBLIC glm box2d PUBLIC freetype PUBLIC glfont PUBLIC ${GLEW_LIBRARY}
错误:
找不到 GLEW(缺少:GLEW_INCLUDE_DIRS GLEW_LIBRARIES) CMakeLists.txt:47 (find_package)
删除find_package允许其生成,但给出编译错误:
错误 LNK1104 无法打开文件 'ext\glew 2.2.0\lib\Release\Win32.lib'
这是正确的文件位置,但找不到该库。我被困住了。我已经从官方网站下载了2.2.0。我有什么遗漏的吗? Wikihow 和其他在线教程似乎没有遇到这个障碍,他们的示例也没有运行。
解决方案是拥有以下 CMakeList:
set(GLEW_INCLUDE_DIR "ext/glew-2.2.0/include")
set(CMAKE_PREFIX_PATH ${CMAKE_CURRENT_SOURCE_DIR}/glew-2.2.0)
target_link_libraries(engine PUBLIC ${GLEW_LIBRARY})