
| 이름: Pegasus | [수정] 2006-09-25 22:27:16 |
안녕하세요, 처음 인사드리겠습니다. 이곳에 많은 고수님들이 계셔서
도움을 받을수 있다고 생각되어 질문을 드려봅니다. 아무쪼록 아시는 분께서
답해주시면 감사하겠습니다.
OS는 10.4 Tiger, Xcode는 버젼이 2.1 입니다.
Xcode에서 GLUT과 OpenGL 프레임웍도 모두 포함시켜구요.
간단한 예제 하나를 만들어서 컴파일을 하면 빌드도 잘되고 실행화일도 만들어지는데,
실행화일을 실행하려고 하면 실행이 되지를 않습니다.
그래서, 다른 방법(수동으로)으로 터미널에서 옵션을 주고 컴파일하면 역시
컴파일도 잘되고 실행화일도 잘 만들어지는데 역시 아래와 같은 에러가 납니다.
제가 윈도우XP 에서는 잘 성공을 시켰는데, MacOSX에서만 고전하네요.
외부에서 사용할때 가지고 다니는 노트북은 오직 파워북인데 왜 안되는지... 아시는 고수분들이
설명해주시면 감사하겠습니다.
$ cc -o exam01 exam01.c -framework GLUT -framework AGL -framework OpenGL
-framework Carbon -framework ApplicationServices
$./exam01
2006-09-25 21:38:47.547 exam01[1592] GLUT Fatal Error: internal error:
NSInternalInconsistencyException, reason: Error (1002) creating CGSWindow
참고로 예제는
#include <GLUT/glut.h>
#include <OpenGL/gl.h>
#include <OpenGL/glu.h>
void MyDisplay() {
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_POLYGON);
glVertex3f(-0.5, -0.5, 0.0);
glVertex3f(0.5, -0.5, 0.0);
glVertex3f(0.5, 0.5, 0.0);
glVertex3f(-0.5, 0.5, 0.0);
glEnd();
glFlush();
}
int main() {
glutCreateWindow("OpenGL Drawing Example");
glutDisplayFunc(MyDisplay);
glutMainLoop();
return 0;
}
앗!!! include에서 GLUT/glut.h, OpenGL/gl.h, OpenGL/glu.h 등이 안나오네요. 제
파워북에서 올려서 그런가...^^;
|
| 이름: capri91 | [삭제] [수정] 2006-09-26 10:17:24 |
glut 함수를 초기화하지 않았기 때문에 에러가 발생하는 것으로 보입니다. main 함수를 다음과 같이 수정해 보세요...
int main(int argc, char** argv) {
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutCreateWindow("OpenGL Drawing Example");
glutDisplayFunc(MyDisplay);
glutMainLoop();
return 0;
}
PS. include가 제대로 표시되도록 수정하였습니다. 양해 바랍니다.
|
사각형이네요.
수정하세요 요로케 ^^;;
int main(int argc, char *argv[]) {
glutInit(&argc, argv);
glutInitWindowSize(256, 256);
glutInitWindowPosition(0, 0);
glutInitDisplayMode(GLUT_RGB | GLUT_DEPTH | GLUT_DOUBLE);
glutCreateWindow(argv[0]);
glutDisplayFunc(MyDisplay);
glutMainLoop();
return 0;
} |
| 이름: capri91 | [삭제] [수정] 2006-09-26 15:21:53 |
박기완님의 소스를 사용하시면 사각형의 "크기와 위치"를 미리 지정할 수 있는 장점이 있습니다. 그러나 대신에 preferences 설정값은 항상 무시되니 주의하시기 바랍니다. 제가 제안한 소스에서와 같이 "크기와 위치" 값을 지정하지 않으면 디폴트값은 아래와 같이 되며, preference 설정값이 있는 경우에는 그 세팅값이 디폴드값을 우선합니다...
glutInitWindowSize(300, 300);
glutInitWindowPosition(-1, -1);
|
| 이름: Pegasus | [삭제] [수정] 2006-09-27 23:52:20 |
많은 관심과 답변 감사합니다.^^
앞으로도 이곳에서 MacOSX에 관한 정보를 많이 보았으면 좋겠습니다. |
|