1

我正在尝试编译(在 FreeBSD 上,如果重要的话)一个使用 cmake 的程序。CMakeLists.txt包含行

find_package(GLUT REQUIRED)

include_directories(${CMAKE_CURRENT_BINARY_DIR} ${OPENGL32_INCLUDE_DIRS} ${GLUT_INCLUDE_DIRS})

并且 cmake 没有报告任何错误,但是当我make之后运行时,我得到

[…]
/usr/bin/c++  -fopenmp -I/path/build -o CMakeFiles/scriptbots.dir/GLView.cpp.o -c /path/GLView.cpp
[…]
In file included from /path/GLView.cpp:2:
/path/GLView.cpp:10:21: error: GL/glut.h: No such file or directory
[…]

GL/ glut.h存在于 中/usr/local/include,它没有作为.-I/usr/bin/c++

当我明确添加-I/usr/local/includeCMakeFiles/scriptbots.dir/flags.make. 我需要更改哪些内容才能在不手动更改标志文件的情况下编译项目?

4

1 回答 1

2

根据其文档,FindGLUT设置 variable GLUT_INCLUDE_DIR,而不是GLUT_INCLUDE_DIRS. 在您的 CMakeList 中更改它,它应该可以工作。

于 2013-01-15T14:15:36.327 回答