如何让Cmake包含gl / GL.h?

时间:2013-07-05 10:13:21

标签: c++ linux opengl cmake debian

你好我是Linux开发的新手,刚刚从Windows MSVS c ++开发转向基于Linux的vim + cmake + gcc。我正在使用Debian Sid(不稳定)。

我正在尝试获取细分的代码,我是从朋友那里得到的。我并不习惯Cmake,谷歌搜索通常很麻烦,因为其他所有的dist似乎有不同的包和不同的解决方案。

  

cmake_minimum_required(VERSION 2.6)
项目(基准)
  Find_Package(Qt4 REQUIRED)   包括($ {QT_USE_FILE})

     

find_package(OpenGL REQUIRED)
  include_directories($ {OPENGL_INCLUDE_DIR})

     

set(CORELIBS $ {QT_LIBRARY} $ {OPENGL_LIBRARY})

     

文件(GLOB SRC“ .cpp”)
  档案(GLOB HEAD“
.h”)
  add_executable(Benchmark $ {SRC})
  target_link_libraries(Benchmark $ {CORELIBS})

这是我当前的Cmake,我想使用find_package(),GLOB等使其尽可能动态,而不是使用绝对路径。

尝试构建时出现以下错误。

  

subdivbench / Matrix4x4.h:4:19:致命错误:gl / GL.h:没有这样的文件或目录
#include gl / GL.h
  编译终止。 make [2]:[CMakeFiles / Benchmark.dir / Matrix4x4.cpp.o]错误1 make [1]:[CMakeFiles / Benchmark.dir / all]错误2

代码是相当无关紧要的,因为它在Windows中完美运行,我需要做的就是使包含等工作在Linux上。

2 个答案:

答案 0 :(得分:8)

包括GL / gl.h而不是gl / GL.h

答案 1 :(得分:1)

汉斯洛夫斯基说:

  

我在我的系统上安装了mesa并制作了一个小样本   CMakeLists.txt:FIND_PACKAGE(需要OpenGL)   MESSAGE(“$ {OPENGL_INCLUDE_DIR}”)输出为:/ usr / include -   配置完成 - 生成完成 - 已编写构建文件   to:/ home / phil / local / tmp / opengl所以你的cmake代码看起来是正确的   我。

     

我发现:我需要包含 GL / gl.h,而不是gl / GL.h。编辑:   对不起格式化,我不知道它不起作用   评价。

这很有用。非常感谢hanslovsky,这只是一个大写问题。