1

所以,我正在阅读http://ogldev.atspace.co.uk/www/tutorial02/tutorial02.html,它说我需要针对 Vector3f 的 math_3d.h。

我试图包括它:

#include <stdio.h>

#include "GL/glew.h"
#include "GL/gl.h"
#include "GL/freeglut.h"

#include "math_3d.h"

void render() {
  glClearColor(0.0, 0.0, 0.0, 0.0);
  glClear(GL_COLOR_BUFFER_BIT);
  glutSwapBuffers();

  glFlush();
}

int main(int argc, char** argv) {
  glutInit(&argc, argv);
  glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA);
  glutInitWindowSize(800, 600);
  glutInitWindowPosition(100, 100);
  glutCreateWindow("OpenGL - First window demo");

  /* Set  */
  GLenum res = glewInit();
  if (res != GLEW_OK) {
    fprintf(stderr, "Error: '%s'\n", glewGetErrorString(res));
    return 1;
  }

  Vector3f vertices[1];

  glutDisplayFunc(render);
  glutMainLoop();

  return 0;
}

G++ 说“main.cpp:7:21:致命错误:math_3d.h:没有这样的文件或目录”。我为它寻找了一个 Arch Linux 包,但我一无所获。

我在这里找到了文件:

http://ogldev.googlecode.com/svn-history/r75/trunk/tutorial36/math_3d.h

我应该下载该文件并将其放在我的项目目录中,还是有更清洁的方法?

另外,如果我确实将它包含在我的目录中,我怎样才能将它添加到 g++ 行?

gcc main.cpp -o main -lGLEW -lglut -lGL
4

3 回答 3

5

我应该下载该文件并将其放在我的项目目录中吗?

是的

于 2012-06-02T21:23:27.277 回答
2

下载目录中的文件就足够了。不需要将其添加到 gcc 命令行。

于 2012-06-02T21:24:47.330 回答
1

是的,您必须下载它,如果您在多个项目中需要此库,您可以将其保存在 /usr/include 中并将其用作 C 库#include <math_3d.h>,避免将其复制到每个项目的目录中。

于 2015-04-16T16:54:58.470 回答