无法使用CMake将GLEW链接到项目

问题描述

可能有人推荐我,如何通过cmake将项目链接到GLEW。

例如,根据GLFW的文档,我做得很好:

...
set(GLFW_BUILD_DOCS OFF CACHE BOOL "" FORCE)
set(GLFW_BUILD_TESTS OFF CACHE BOOL "" FORCE)
set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)

add_subdirectory(${CMAKE_SOURCE_DIR}/application/dependencies/GLFW)
...
add_executable(${PROJECT_NAME} ${${PROJECT_NAME}_MAIN})
target_link_libraries(${PROJECT_NAME} glfw)

我还没有找到GLEW的优质文档。我还要注意,我已经安装了this版本的GLEW,其中CMakeLists.txt位于根目录中。我尝试了其他选项,但是该项目无法找到glwe lib。

我的最佳尝试如下:

add_subdirectory(${CMAKE_SOURCE_DIR}/application/dependencies/GLEW)
...
add_executable(${PROJECT_NAME} ${${PROJECT_NAME}_MAIN})
target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/application/dependencies/GLEW/include)
target_link_libraries(${PROJECT_NAME} glfw GLEW)

但是,这似乎很愚蠢。我的意思是,如果我理解正确,Glew的CMake会生成静态/动态库,然后在下一步中将其链接到项目。但是,它仍然无法检测到问题库。

解决方法

在链接的项目中没有名为GLEW的CMake目标。库目标称为libglew_staticlibglew_shared。您应该使用glew项目CMakeLists.txt中定义的库目标。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...