【问题标题】:Can't compile a c++ file using OpenGL library on Mac OS using Xcode and Terminal无法使用 Xcode 和终端在 Mac OS 上使用 OpenGL 库编译 c++ 文件
【发布时间】:2016-05-21 14:20:35
【问题描述】:

我正在尝试编译这个simple program

但每次我尝试使用 Xcode 或终端执行此操作时,我都会收到这些 warnings and errors

【问题讨论】:

  • 什么是“g++ 文件”?
  • 还有,输入图片描述呢?
  • 另外,删除了“kthxbai!”结束语;不用担心,我们不介意,但它们在 SO 上已被弃用,因为 每个人 都在寻求帮助,所以说“希望你能帮助我”真的是多余的。
  • 另外,您应该在您的问题中包含文本截图。你到底为什么不复制粘贴源代码文本,然后用“格式化为代码”按钮格式化它??

标签: c++ xcode macos opengl


【解决方案1】:

首先,“g++”文件应该是什么意思?

  • g++ 是一个调用 GNU c++ 编译器的命令。
  • c++ 编译器可以编译 c++ 代码。
  • OpenGL 是纯 C API,您的代码也是。
  • c++ 编译器并非用于编译 c 代码,尽管它们可以(带有一些“但是”)

在函数display()中尝试并计算以下内容:

  • 为什么glClear(GL_POLYGON)这行

display() 的前三行应采用以下语法:

//glClear(GL_POLYGON);  //this is meaningless !
glClearColor(0.,0.,0., 1.);
glClear(GL_COLOR_BUFFER_BIT);   
glColor4f(.1,.2,.3, 1.);

如果你在Linux上编译它必须至少链接libGL,在OSX对应的框架:-framework opengl,在Windows你必须链接opengl32

除了 OpenGL,您的程序还依赖于 GLUT,因此您也必须链接到它。

已弃用并不意味着已退休

享受学习 OpenGL 的乐趣!

【讨论】:

  • 感谢您的编辑和抽出宝贵时间,@datenwolf (-:
  • 好的,很抱歉涉及我的问题,我不太习惯编程,但我正在尝试为一个项目学习 OpenGL。
  • 但是我应该怎么做才能成功纠正程序中的错误?我的意思是我只是看不到任何错误。我正在使用 sublime 并尝试在终端上执行 #include void display() { glClear(GL_POLYGON); glBegin(GL_POLYGON); glVertex2f(-0.5,-0.5); glVertex2f(-0.5,0.5); glVertex2f(0.5,0.5); glVertex2f(0.5,-0.5); glEnd(); glFlush(); } int main(int argc, char** argv) { glutInit(&argc,argv); glutCreateWindow("简单");过剩显示函数(显示);过剩主循环(); }
  • 1.删除glClear(GL_POLYGON);。 2. 复制粘贴我写在glClear(GL_POLYGON); 之前的位置,就在glBegin(GL_POLYGON); 之前的三行。希望现在已经足够清楚了。
猜你喜欢
  • 1970-01-01
  • 2014-12-12
  • 2011-09-01
  • 2015-11-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-10
  • 1970-01-01
相关资源
最近更新 更多