And*_*ela 3 opengl macos netbeans
我是OpenGL的初学者,"我的"第一个程序是这个Sierpinski Gasket.我在MacBook Pro上使用Netbeans,我相信我已经安装了库但可能没有正确链接.
#include <iostream>
#include <stdio.h>
#include <OpenGL/gl.h>
#include <OpenGL/glu.h>
#include <GLUT/glut.h>
#include <OpenGL/glext.h>
void myinit(){
glClearColor(1.0,1.0,1.0,1.0);
glColor3f(1.0,0.0,0.0);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(0.0,50.0,0.0,50.0);
glMatrixMode(GL_MODELVIEW);
}
void display(){
GLfloat vertices[3][2]={{0.0,0.0},{25.0,50.0},{50.0,0.0}};
int i, j, k;
int rand();
GLfloat p[2]={7.5,5.0};
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_POINTS);
for(k=0; k<5000; k++){
j=rand()*3;
p[0]=(p[0]+vertices[j][0])/2.0;
p[1]=(p[1]+vertices[j][1])/2.0;
glVertex2fv(p);
}
glEnd();
glFlush();
}
int main(int argc, char** argv) {
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize(500,500);
glutInitWindowPosition(0,0);
glutCreateWindow("Sierpinski Gasket");
glutDisplayFunc(display);
myinit();
glutMainLoop();
}
Run Code Online (Sandbox Code Playgroud)
以下是编译错误:
架构x86_64的未定义符号:
"_glutInit",引自:
Run Code Online (Sandbox Code Playgroud)_main in main.o"_glutInitDisplayMode",引自:
Run Code Online (Sandbox Code Playgroud)_main in main.o"_glutInitWindowSize",引自:
Run Code Online (Sandbox Code Playgroud)_main in main.o"_glutInitWindowPosition",引自:
Run Code Online (Sandbox Code Playgroud)_main in main.o"_glutCreateWindow",引自:
Run Code Online (Sandbox Code Playgroud)_main in main.o"_glutDisplayFunc",引自:
Run Code Online (Sandbox Code Playgroud)_main in main.o"_glutMainLoop",引自:
Run Code Online (Sandbox Code Playgroud)_main in main.old:找不到架构x86_64的符号
collect2:ld返回1退出状态
make [2]:* [dist/Debug/GNU-MacOSX/sierpinski]错误1
make [1]:* [.build-conf]错误2
make:* [.build-impl]错误2
小智 13
您需要链接GLUT框架.在项目属性>链接器>命令行> Aditional选项中,指定
-framework GLUT
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18515 次 |
| 最近记录: |