gpt4 book ai didi

cmake - 使用 CMake 链接 GLEW

转载 作者:行者123 更新时间:2023-12-01 07:49:06 29 4
gpt4 key购买 nike

我的项目依赖于 GLEW 并使用 CMake 构建,所以我从这里获取了 FindGLEW.cmake http://code.google.com/p/nvidia-texture-tools/source/browse/trunk/cmake/FindGLEW.cmake?r=96并在我的 CMakeLists.txt 中写入了 find_package(GLEW REQUIRED)。问题是我在集群 PC 上工作,有几个版本的 GLEW 可用。一个版本存储在 /usr/lib 中,这不是最新的。最新版本存储在 /opt/local/lib64 中。这是我要链接的版本。所以我在 GLEW_LIBRARY 路径下添加了 FindGLEW.cmake 的路径。问题是 makefile 总是链接到旧版本,但我需要最新版本 (1.7) 才能使用 GL_PATCHESGL_PATCH_PARAMETERS 等内容。我能不能像 FindBoost.cmake 那样强制 CMake 使用较新的版本。一种解决方案是删除旧的,但这不是一种选择。我还更改了 GLEW_LIBRARY 列表中路径的顺序,但没有成功。

在我的旧 Makefile 中我刚刚写了 LDDFLAGS = -L/opt/local/lib64 -lGLEW 所以路径绝对清晰,但是现在使用 CMake 我想使用查找功能,但是想要更喜欢特定版本。

最佳答案

我使用它在特定位置静态链接到自定义编译的 GLEW 库:

#GLEW libraries
add_library(glew_static STATIC IMPORTED)
set_target_properties(glew_static PROPERTIES
IMPORTED_LOCATION /home/ryan/DevLibrary/glew-1.9.0/lib/libGLEW.a)
target_link_libraries(smolder glew_static)

有了这个你就可以删除

find_package(GLEW REQUIRED)

您也可以将其用于共享库,只需从 add_library 中删除 STATIC 关键字即可。

关于cmake - 使用 CMake 链接 GLEW,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13958733/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com