无法将格鲁与Cmake联系起来
Not able to link Glew with Cmake
我正在使用OS X上的VScode使用C ++进入OpenGL。我已经安装了 glfw 并用啤酒发光。我已经成功地用 cmake 构建了 glfw 库,我可以打开一个窗口,但是当我尝试构建 glew 时,它总是给我一个错误。
这是我的CMakeList.txt
cmake_minimum_required (VERSION 3.5)
project (test)
set(CMAKE_CXX_STANDARD 11)
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_executable(test
src/main.cpp
)
add_subdirectory(glfw)
find_package(GLEW REQUIRED)
find_package(OpenGL REQUIRED)
if (GLEW_FOUND)
include_directories(glew/include)
endif()
if (APPLE)
target_link_libraries(test ${GLEW_LIBRARY})
target_link_libraries(test "-framework GLUT")
target_link_libraries(test "-framework OpenGL")
endif()
target_link_libraries(test glfw ${GLEW_LIBRARIES})
当我尝试"制作"它时,它会给我这个错误:
undefined symbols for architecture x86_64:"_glewInit", referenced from: _main in main.cpp.o.
我能够将 GLEW 与
brew install glew
(此步骤构建 glew 并将其安装在您的系统上,所以你是说这失败了吗?否则,不需要进一步构建 glew。
然后在我的顶级CMakeLists中.txt
find_package(GLEW 2.0 REQUIRED)
在 CMakeList 中.txt为我的主.cpp设置了我的目标需要#include "GL/glew.h"
我添加了以下行:
target_link_libraries(${MAIN} GLEW::GLEW)
${MAIN} 是我为主要目标名称设置的变量。
相关文章:
- 如何创建一个CMake变量,除非显式重写,否则使用默认值
- 使用C++库在Android项目中修改gradle中的cmake参数,用于插入指令的测试
- CMake-按正确顺序将项目与C运行时对象文件链接
- 使用CMake创建QML插件
- cmake如何在fedora工作站中找到boost静态库包
- 使用CMake检测支持的C++标准
- CMake项目Boost库错误:Boost/config/compiler/gcc.hpp:165:10:致命错误:cs
- 如何使用CMake编译.proto文件来生成.grpcp.pb.cc和.grpc.pb.h文件
- cmake在我的项目中所需的所有静态库都不成功
- 在CMakeLists.txt的安装功能中使用.cmake文件有什么用
- 无法链接 CMake 中的本地库
- libssh 的函数在构建 libssh 时无法在 Qt 和 cmake 错误中找到
- 如何在Ubuntu中使用cmake设置qt4
- 使用cmake从源代码构建MySQL连接器/C++失败(与以前的声明冲突)
- 为什么 cmake 许可证<>样式不包括?
- 将 Boost 与 CMAKE 联系起来时出现问题
- 无法将格鲁与Cmake联系起来
- 如何将 Android 项目与 libandroid 与 Cmake 联系起来
- CMAKE-如何将塔库与OpenCV -C 项目联系起来
- 如何将lapack与CMake和Visual 2013联系起来