Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[OpenGL, GLUT] problem z plikiem glut.h

Ostatnio zmodyfikowano 2013-01-02 16:20
Autor Wiadomość
amu
Temat założony przez niniejszego użytkownika
[OpenGL, GLUT] problem z plikiem glut.h
» 2013-01-02 11:49:45
Problem pojawia się przy kompilacji dowolnego kodu. Zawsze dotyczy dwóch funkcji

c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\..\..\..\..\include\GL\glut.h|486|undefined reference to `__glutInitWithExit'|

c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\..\..\..\..\include\GL\glut.h|503|undefined reference to `__glutCreateWindowWithExit'|


poniżej załączam fragment pliku glut.h gdzie jest w/w błąd

C/C++
/* GLUT initialization sub-API. */
GLUTAPI void APIENTRY glutInit( int * argcp, char ** argv );
#if defined(_WIN32) && !defined(GLUT_DISABLE_ATEXIT_HACK)
GLUTAPI void APIENTRY __glutInitWithExit( int * argcp, char ** argv, void( __cdecl * exitfunc )( int ) );
#ifndef GLUT_BUILDING_LIB
static void APIENTRY glutInit_ATEXIT_HACK( int * argcp, char ** argv ) { __glutInitWithExit( argcp, argv, exit ); }
#define glutInit glutInit_ATEXIT_HACK
#endif
#endif
GLUTAPI void APIENTRY glutInitDisplayMode( unsigned int mode );
#if (GLUT_API_VERSION >= 4 || GLUT_XLIB_IMPLEMENTATION >= 9)
GLUTAPI void APIENTRY glutInitDisplayString( const char * string );
#endif
GLUTAPI void APIENTRY glutInitWindowPosition( int x, int y );
GLUTAPI void APIENTRY glutInitWindowSize( int width, int height );
GLUTAPI void APIENTRY glutMainLoop( void );

/* GLUT window sub-API. */
GLUTAPI int APIENTRY glutCreateWindow( const char * title );
#if defined(_WIN32) && !defined(GLUT_DISABLE_ATEXIT_HACK)
GLUTAPI int APIENTRY __glutCreateWindowWithExit( const char * title, void( __cdecl * exitfunc )( int ) );
#ifndef GLUT_BUILDING_LIB
static int APIENTRY glutCreateWindow_ATEXIT_HACK( const char * title ) { return __glutCreateWindowWithExit( title, exit ); }
#define glutCreateWindow glutCreateWindow_ATEXIT_HACK
#endif
#endif


później mam jeszcze błędy w pliku main.cpp również: undefined reference to:<tutaj kolejne funkcje opengla>
ale w linkerze mam dodane wszystko jak trzeba: glut32, opengl32, glu32, gdi32, winmm. Pliki są na swoich miejscach itp itd.

Używam CodeBlocks 12.11

Proszę o pomoc, przeszukałem już wiele for, bezskutecznie. I przepraszam, ale nie wiem jak umieścić kod w odpowiednich ramkach.
P-72679
Mike148
» 2013-01-02 12:50:18
A dodałeś bibliotekę do opcji linkera (żeby zlinkował ją) ?
Jeśli tak to najprawdopodobniej nie masz biblioteki glut.dll w windows/system lub przy pliku .exe
P-72680
amu
Temat założony przez niniejszego użytkownika
» 2013-01-02 13:07:11
wkleiłem glut.dll we wszystkich wskazanych przez Ciebie miejscach z jednym wyjątkiem - pliku exe jeszcze nie mam, ponieważ kompilacja nie dobiegła końca. Niestety błąd dalej występuje.
P-72681
Mike148
» 2013-01-02 14:01:46
A czy w opcjach linkera ustawiłeś jej linkowanie

Dajesz
Project -> Build options -> Linker settings ->
I w polu : Other linker options wpisujesz
-lglut32
-lopengl32
-lglu32
-lwinmm
-lgdi32
P-72688
MeGameOne
» 2013-01-02 14:04:46
Wewyznaczonych miejscach wklej plik glut .h
P-72689
Mike148
» 2013-01-02 14:16:06
Wewyznaczonych miejscach wklej plik glut .h
Wiesz, że to nie pomoże. Kompilator nie zwraca błędu, że nie znalazł pliku glut.h (przecież podaje jego ścieżkę) tylko nie znalazł funkcji, które są zdefiniowane w pliku glut.h, czyli nie ma najprawdopodobniej zlinkowanej biblioteki.
A cha. "W wyznaczonych" się mówi i pisze ;)
P-72692
MeGameOne
» 2013-01-02 14:28:41
W code blocks ten blad oznacza że brakuje mu danego pliku .
A co do mojego błędu to muszę powiedzieć że na tablecie ciężki sie pisze.
Pozdro                                                                                                                                                                                                           
P-72696
Mike148
» 2013-01-02 14:35:42
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\..\..\..\..\include\GL\glut.h|486|undefined reference to `__glutInitWithExit'|

Tu to raczej chyba plik ma bo ci ścieżkę do niego podaje. Jak brakuje pliku to jest "missing files" a tu jest "undefined reference to", czyli tak jak mówiłem nie ma biblioteki :)
P-72698
« 1 » 2
  Strona 1 z 2 Następna strona