你好我是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上。
答案 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,这只是一个大写问题。