| | |
| Stránka: 1 z 1
| [ Príspevkov: 12 ] | |
Autor | Správa |
---|
Registrovaný: 06.05.09 Prihlásený: 06.08.09 Príspevky: 61 Témy: 7 Bydlisko: Bytča |
Zdravim chcel by som programovat v OpenGL v Linuxe mam prekladac gcc a mam aj kniznice ale ked vytvorim subor ktory obsahuje iba #include <gl.h> napise ze gl.h no such file or directory a ked napisem #include <GL/gl.h> napise mi toto:
Kód: /usr/lib/gcc/i486-linux-gnu/4.3.2/../../../../lib/crt1.o: In function `_start': (.text+0x18): undefined reference to `main' collect2: ld returned 1 exit status
chcem vediet ci je v linuxe potrebne nieco ako v linuxe boli tie dll subory ktore sa davali do system32 alebo preco mi to nejde
|
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | Napísal chrono: 30.06.2009 17:36 | |
|
A máš v tom súbore funkciu main?
|
|
Registrovaný: 06.05.09 Prihlásený: 06.08.09 Príspevky: 61 Témy: 7 Bydlisko: Bytča | Napísal autor témy Flexor28: 30.06.2009 19:08 | |
|
teraz som skusil vytvorit program ktory urobi iba ciste okno tu je kod:
Kód: #include <GL/glut.h> // Header File For The GLUT Library #include <GL/gl.h> // Header File For The OpenGL32 Library #include <GL/glu.h> // Header File For The GLu32 Library #include <unistd.h> // Header file for sleeping.
/* ascii code for the escape key */ #define ESCAPE 27
/* The number of our GLUT window */ int window;
/* A general OpenGL initialization function. Sets all of the initial parameters. */ void InitGL(int Width, int Height) // We call this right after our OpenGL window is created. { glClearColor(0.0f, 0.0f, 0.0f, 0.0f); // This Will Clear The Background Color To Black glClearDepth(1.0); // Enables Clearing Of The Depth Buffer glDepthFunc(GL_LESS); // The Type Of Depth Test To Do glEnable(GL_DEPTH_TEST); // Enables Depth Testing glShadeModel(GL_SMOOTH); // Enables Smooth Color Shading
glMatrixMode(GL_PROJECTION); glLoadIdentity(); // Reset The Projection Matrix
gluPerspective(45.0f,(GLfloat)Width/(GLfloat)Height,0.1f,100.0f); // Calculate The Aspect Ratio Of The Window
glMatrixMode(GL_MODELVIEW); }
/* The function called when our window is resized (which shouldn't happen, because we're fullscreen) */ void ReSizeGLScene(int Width, int Height) { if (Height==0) // Prevent A Divide By Zero If The Window Is Too Small Height=1;
glViewport(0, 0, Width, Height); // Reset The Current Viewport And Perspective Transformation
glMatrixMode(GL_PROJECTION); glLoadIdentity();
gluPerspective(45.0f,(GLfloat)Width/(GLfloat)Height,0.1f,100.0f); glMatrixMode(GL_MODELVIEW); }
/* The main drawing function. */ void DrawGLScene() { glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // Clear The Screen And The Depth Buffer glLoadIdentity(); // Reset The View
// since this is double buffered, swap the buffers to display what just got drawn. glutSwapBuffers(); }
/* The function called whenever a key is pressed. */ void keyPressed(unsigned char key, int x, int y) { /* avoid thrashing this procedure */ usleep(100);
/* If escape is pressed, kill everything. */ if (key == ESCAPE) { /* shut down our window */ glutDestroyWindow(window); /* exit the program...normal termination. */ exit(0); } }
int main(int argc, char **argv) { /* Initialize GLUT state - glut will take any command line arguments that pertain to it or X Windows - look at its documentation at http://reality.sgi.com/mjk/spec3/spec3.html */ glutInit(&argc, argv);
/* Select type of Display mode: Double buffer RGBA color Alpha components supported Depth buffer */ glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE | GLUT_ALPHA | GLUT_DEPTH);
/* get a 640 x 480 window */ glutInitWindowSize(640, 480);
/* the window starts at the upper left corner of the screen */ glutInitWindowPosition(0, 0);
/* Open a window */ window = glutCreateWindow("Jeff Molofee's GL Code Tutorial ... NeHe '99");
/* Register the function to do all our OpenGL drawing. */ glutDisplayFunc(&DrawGLScene);
/* Go fullscreen. This is as soon as possible. */ glutFullScreen();
/* Even if there are no events, redraw our gl scene. */ glutIdleFunc(&DrawGLScene);
/* Register the function called when our window is resized. */ glutReshapeFunc(&ReSizeGLScene);
/* Register the function called when the keyboard is pressed. */ glutKeyboardFunc(&keyPressed);
/* Initialize our window. */ InitGL(640, 480); /* Start Event Processing Engine */ glutMainLoop();
return 1; }
a napisalo mi to toto: Kód: lesson1.c:(.text+0x2a): undefined reference to `glClearColor' lesson1.c:(.text+0x34): undefined reference to `glClearDepth' lesson1.c:(.text+0x40): undefined reference to `glDepthFunc' lesson1.c:(.text+0x4c): undefined reference to `glEnable' lesson1.c:(.text+0x58): undefined reference to `glShadeModel' lesson1.c:(.text+0x64): undefined reference to `glMatrixMode' lesson1.c:(.text+0x69): undefined reference to `glLoadIdentity' lesson1.c:(.text+0x97): undefined reference to `gluPerspective' lesson1.c:(.text+0xa3): undefined reference to `glMatrixMode' /tmp/cclWUuAc.o: In function `ReSizeGLScene': lesson1.c:(.text+0xda): undefined reference to `glViewport' lesson1.c:(.text+0xe6): undefined reference to `glMatrixMode' lesson1.c:(.text+0xeb): undefined reference to `glLoadIdentity' lesson1.c:(.text+0x119): undefined reference to `gluPerspective' lesson1.c:(.text+0x125): undefined reference to `glMatrixMode' /tmp/cclWUuAc.o: In function `DrawGLScene': lesson1.c:(.text+0x139): undefined reference to `glClear' lesson1.c:(.text+0x13e): undefined reference to `glLoadIdentity' lesson1.c:(.text+0x143): undefined reference to `glutSwapBuffers' /tmp/cclWUuAc.o: In function `keyPressed': lesson1.c:(.text+0x170): undefined reference to `glutDestroyWindow' /tmp/cclWUuAc.o: In function `main': lesson1.c:(.text+0x19e): undefined reference to `glutInit' lesson1.c:(.text+0x1aa): undefined reference to `glutInitDisplayMode' lesson1.c:(.text+0x1be): undefined reference to `glutInitWindowSize' lesson1.c:(.text+0x1d2): undefined reference to `glutInitWindowPosition' lesson1.c:(.text+0x1de): undefined reference to `glutCreateWindow' lesson1.c:(.text+0x1f0): undefined reference to `glutDisplayFunc' lesson1.c:(.text+0x1f5): undefined reference to `glutFullScreen' lesson1.c:(.text+0x202): undefined reference to `glutIdleFunc' lesson1.c:(.text+0x20e): undefined reference to `glutReshapeFunc' lesson1.c:(.text+0x21a): undefined reference to `glutKeyboardFunc' lesson1.c:(.text+0x233): undefined reference to `glutMainLoop' collect2: ld returned 1 exit status
|
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | Napísal chrono: 30.06.2009 21:12 | |
|
Musíš koplilátoru povedať, že má pouťič knižnice GL, GLU a glut. U mňa by to teda bolo nejako takto: Kód: gcc -Wall -O2 -lGL -lGLU -L/usr/X11R6/lib -lglut main.c -o gl-test
PS: Pridaj tam aj #include <stdlib.h>, v tom súbore je totiž nadefinovaná funkcia exit.
|
|
Registrovaný: 06.05.09 Prihlásený: 06.08.09 Príspevky: 61 Témy: 7 Bydlisko: Bytča | Napísal autor témy Flexor28: 01.07.2009 10:20 | |
|
Vypisalo mi toto:
Kód: /usr/bin/ld: cannot find -lglut collect2: ld returned 1 exit status
ale nevie ci mam spravne ulozene to glut.h mam ho v /usr/include/GL ma byt tam bo inde?
|
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | Napísal chrono: 01.07.2009 12:03 | |
|
A máš aj knižnicu glut? (ten súbor glut.h sa používa len počas kompilovania, pri linkovaní sa používa knižnica libglut)
|
|
Registrovaný: 06.05.09 Prihlásený: 06.08.09 Príspevky: 61 Témy: 7 Bydlisko: Bytča | Napísal autor témy Flexor28: 01.07.2009 12:05 | |
|
ano mam aj kniznicu glut.h ale neviem ci mam tu kniznicu libglut
|
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | Napísal chrono: 02.07.2009 1:37 | |
|
glut.h nie je knižnica, je to len hlavičkový súbor. Ty potrebuješ aj tú knižnicu glut (a aj devel balíček). Pozri sa, či máš tú knižnicu nainštalovanú a keď nainštalovaná nie je, tak ju nainštaluj (inak zisti kde je umiestnená a podľa toho uprav ten parameter -L).
Netuším, aký máš Linux, ale ak máš niečo normálne, tak tam máš určite nejaký pekný grafický program v ktorom sa môžeš pozrieť, čo všetko máš nainštalované a čo všetko si prípadne môžeš nainštalovať (a niekde tam bude aj tá glut knižnica).
|
|
Registrovaný: 06.05.09 Prihlásený: 06.08.09 Príspevky: 61 Témy: 7 Bydlisko: Bytča | Napísal autor témy Flexor28: 02.07.2009 11:06 | |
|
mal som nainstalovany iba jeden balik takze teraz doinstalovavam dalsie uvidim co to urobi
|
|
Registrovaný: 06.05.09 Prihlásený: 06.08.09 Príspevky: 61 Témy: 7 Bydlisko: Bytča | Napísal autor témy Flexor28: 02.07.2009 12:53 | |
|
diky uz to ide uvidime ako to zvladne ostatne programy
|
|
Registrovaný: 02.11.07 Prihlásený: 18.03.15 Príspevky: 470 Témy: 22 Bydlisko: Zilinska Un... |
Flexor28 píše: diky uz to ide uvidime ako to zvladne ostatne programy
Flexor28 pocuj to je zly zaciatok nauc sa robit obiektovo zaprve, necital som vase texty tu, ale na OpenGL kniznice ti staci mat spravne nainstalovanu graficku kartu + neake veci.
studuj odtialto su tam dobre zaklady ..... (priklady su tam robene na starych knizciach a starym sposobom, Nekopiraovat odtial vsetko!!!)
http://nehe.ceske-hry.cz/tut_obsah.php
+ poskytnem ti ak tak moju hru v OpenGL je tam vela zmetkov, taka odlahcena cast, kt. ukazem, na ktorej som sa iba ucil robit , ale na pochopenie ako Programovat v OpenGL ti bude as moc stacit ako zaciatocnikovi. Myslim to co mam v tom softe nenajdes nikde na webe stylisticky, ale vychadza to troska z nehe tutorialov. Je to komplet workspace pre Eclipse do Linuxu.
Ak mas vsetko dobre nainstalovane, staci ti to len skompilovat a malo by to ist ....
http://rapidshare.com/files/253506827/bound3D.zip.html
!!!! Toto nie je WAREZ.
_________________ Notebook: HP EliteBook 8740w
You can see my work in my www |
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | Napísal chrono: 09.07.2009 16:16 | |
|
Osobne si myslím, že by sa najskôr mal vrátiť k úplným základom C, aby vedel, aký je rozdiel medzi hlavičkovým súborom a knižnicou. Aby vedel, čo treba robiť, keď program potrebuje nejaké knižnice...
|
|
| Stránka: 1 z 1
| [ Príspevkov: 12 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| opengl v Assembler, C, C++, Pascal, Java | 1 | 634 | 17.11.2008 10:51 johny3212 | | OpenGL v Ovládače | 18 | 7860 | 13.11.2008 1:25 PSYCHOTEROR | | OpenGL v Ostatné programy | 4 | 841 | 13.12.2006 18:47 POM4R4NC | | CSS openGL v Počítačové hry | 3 | 467 | 17.04.2010 21:48 eXistenZ | | OpenGL, help v Assembler, C, C++, Pascal, Java | 0 | 514 | 26.09.2008 16:52 johny3212 | | Java + OpenGL v Assembler, C, C++, Pascal, Java | 2 | 510 | 10.01.2011 21:28 gladiatus | | problem s OpenGL v nVidia grafické karty | 4 | 523 | 15.05.2007 10:09 Shit | | Java a OpenGL v Assembler, C, C++, Pascal, Java | 0 | 505 | 30.03.2009 20:29 ewil | | Problém s OpenGL v Ostatné programy | 0 | 507 | 15.11.2006 19:46 DeaLer | | Problém z OpenGL [ Choď na stránku: 1, 2 ] v ATI/AMD grafické karty | 30 | 505 | 08.02.2014 16:53 patrikufik | | MineCraft OpenGL CHYBA v Počítačové hry | 1 | 645 | 14.02.2011 9:54 shiro | | DirectX alebo OpenGL v Assembler, C, C++, Pascal, Java | 0 | 239 | 07.01.2013 11:17 FBerente | | C++/SFML/OpenGL v Assembler, C, C++, Pascal, Java | 23 | 702 | 26.04.2015 2:25 Misosvk | | Vista a OpenGL v Operačné systémy Microsoft | 4 | 488 | 17.09.2006 0:33 Shark NX | | Problém s OpenGl v Ovládače | 2 | 437 | 19.01.2011 15:51 seamus_22 | | Wolfenstein a OpenGL v Počítačové hry | 4 | 897 | 06.08.2007 12:42 johny128 |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|