Skip Menu |

Preferred bug tracker

Please visit the preferred bug tracker to report your issue.

This queue is for tickets about the OpenGL CPAN distribution.

Report information
The Basics
Id: 50051
Status: resolved
Priority: 0/
Queue: OpenGL

People
Owner: Nobody in particular
Requestors: CHORNY [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: 0.58_005
Fixed in: 0.59



Subject: compilation error
Win32 + gcc, perl 5.10.0 CPAN.pm: Going to build C/CH/CHM/OpenGL-0.58_005.tar.gz glversion.o:glversion.c:(.text+0x5b): undefined reference to `_imp__glutInit@8' glversion.o:glversion.c:(.text+0x74): undefined reference to `_imp__glutInitWindowSize@8' glversion.o:glversion.c:(.text+0x85): undefined reference to `_imp__glutInitDisplayMode@4' glversion.o:glversion.c:(.text+0x96): undefined reference to `_imp__glutCreateWindow@4' glversion.o:glversion.c:(.text+0xa3): undefined reference to `_imp__glutHideWindow@0' glversion.o:glversion.c:(.text+0xb1): undefined reference to `_imp__glutGet@4' glversion.o:glversion.c:(.text+0x13b): undefined reference to `_imp__glutDestroyWindow@4' collect2: ld returned 1 exit status (C:\strawberry\perl\bin\perl.exe Makefile.PL exited with 0) CPAN::Reporter: test results were not valid, No Makefile or Build file found. -- Alexandr Ciornii, http://chorny.net
On Sun Sep 27 15:16:08 2009, CHORNY wrote: Show quoted text
> Win32 + gcc, perl 5.10.0 > ...snip... > (C:\strawberry\perl\bin\perl.exe Makefile.PL exited with 0) > > CPAN::Reporter: test results were not valid, No Makefile or Build file > found.
The compile error suggests that the Makefile.PL was not able to correctly configure (determine OpenGL, GLU, GLUT,.. library locations). Since there is a binary freeglut.dll for windows installed with OpenGL, the missing glut functions in the compile may be because you do not have FreeGLUT installed (or the OpenGL Makefile.PL was not able to correctly install, or the linking is not right for gcc+strawberry perl)... Could you try a manual configure and build and send me the output? First, download module dist from CPAN, then tar xzf OpenGL-0.58_005.tar.gz cd OpenGL-0.58_005 perl Makefile.PL verbose make make test I'm not familiar with strawberry perl w gcc so you may need to adapt these directions to match what is actually used. Thanks for the feedback. I look forward to hearing back from you. Regards, Chris
Вск. Сен. 27 16:07:06 2009, CHM писал: Show quoted text
> Could you try a manual configure and build and send me the output?
$verbose set to 1 found libs: FREEGLUT32 = 'freeglut' GLU32 = 'glu32' OPENGL32 = 'opengl32' Testing for OpenGL Extensions Testing GLUT version glversion: cd utils&mingw.bat clean&mingw.bat glversion.o:glversion.c:(.text+0x5b): undefined reference to `_imp__glutInit@8' glversion.o:glversion.c:(.text+0x74): undefined reference to `_imp__glutInitWindowSize@8' glversion.o:glversion.c:(.text+0x85): undefined reference to `_imp__glutInitDisplayMode@4' glversion.o:glversion.c:(.text+0x96): undefined reference to `_imp__glutCreateWindow@4' glversion.o:glversion.c:(.text+0xa3): undefined reference to `_imp__glutHideWindow@0' glversion.o:glversion.c:(.text+0xb1): undefined reference to `_imp__glutGet@4' glversion.o:glversion.c:(.text+0x13b): undefined reference to `_imp__glutDestroyWindow@4' collect2: ld returned 1 exit status deleted glversion.o compiling glversion.c linking glversion.o build error! get_extensions: could not open utils/glversion.txt: No such file or directory -- Alexandr Ciornii, http://chorny.net
Looking at mingw.bat, the failing command appears to be: gcc -o glversion.exe glversion.o -lopengl32 -L../FreeGLUT -lfreeglut which, for some reason is not linking correctly. I'm at a loss to understand why the library in ../FreeGLUT is not being linked to. Did Makefile.PL install freeglut.dll? If so, did it end up in your PATH? If not, is the exiting one executable and in the PATH? Apologies that I am not able to test this setup myself. --Chris On Sun Sep 27 16:21:51 2009, CHORNY wrote: Show quoted text
> Вск. Сен. 27 16:07:06 2009, CHM писал: >
> > Could you try a manual configure and build and send me the output?
> > $verbose set to 1 > found libs: > FREEGLUT32 = 'freeglut' > GLU32 = 'glu32' > OPENGL32 = 'opengl32' > Testing for OpenGL Extensions > Testing GLUT version > glversion: cd utils&mingw.bat clean&mingw.bat > glversion.o:glversion.c:(.text+0x5b): undefined reference to > `_imp__glutInit@8' > glversion.o:glversion.c:(.text+0x74): undefined reference to > `_imp__glutInitWindowSize@8' > glversion.o:glversion.c:(.text+0x85): undefined reference to > `_imp__glutInitDisplayMode@4' > glversion.o:glversion.c:(.text+0x96): undefined reference to > `_imp__glutCreateWindow@4' > glversion.o:glversion.c:(.text+0xa3): undefined reference to > `_imp__glutHideWindow@0' > glversion.o:glversion.c:(.text+0xb1): undefined reference to > `_imp__glutGet@4' > glversion.o:glversion.c:(.text+0x13b): undefined reference to > `_imp__glutDestroyWindow@4' > collect2: ld returned 1 exit status > > deleted glversion.o > > compiling glversion.c > linking glversion.o > build error! > > > > get_extensions: could not open utils/glversion.txt: No such file or > directory > >
On Sun Sep 27 16:21:51 2009, CHORNY wrote: Show quoted text
> Вск. Сен. 27 16:07:06 2009, CHM писал: >
> > Could you try a manual configure and build and send me the output?
> > $verbose set to 1 > found libs: > FREEGLUT32 = 'freeglut' > GLU32 = 'glu32' > OPENGL32 = 'opengl32' > Testing for OpenGL Extensions > Testing GLUT version > glversion: cd utils&mingw.bat clean&mingw.bat > glversion.o:glversion.c:(.text+0x5b): undefined reference to > `_imp__glutInit@8' > glversion.o:glversion.c:(.text+0x74): undefined reference to > `_imp__glutInitWindowSize@8' > glversion.o:glversion.c:(.text+0x85): undefined reference to > `_imp__glutInitDisplayMode@4' > glversion.o:glversion.c:(.text+0x96): undefined reference to > `_imp__glutCreateWindow@4' > glversion.o:glversion.c:(.text+0xa3): undefined reference to > `_imp__glutHideWindow@0' > glversion.o:glversion.c:(.text+0xb1): undefined reference to > `_imp__glutGet@4' > glversion.o:glversion.c:(.text+0x13b): undefined reference to > `_imp__glutDestroyWindow@4' > collect2: ld returned 1 exit status > > deleted glversion.o > > compiling glversion.c > linking glversion.o > build error! > > > > get_extensions: could not open utils/glversion.txt: No such file or > directory > >
No such problem for me with Strawberry Perl 5.10.0: ###################### $verbose set to 1 found libs: FREEGLUT32 = 'freeglut' GLU32 = 'glu32' GLUT32 = 'glut32' OPENGL32 = 'opengl32' Testing for OpenGL Extensions Testing GLUT version glversion: cd utils&mingw.bat clean&mingw.bat compiling glversion.c linking glversion.o generating glversion.txt Found FreeGLUT v20400 OpenGL Extension exclusions disabled Have Version Data Using interface: FREEGLUT resulting libs: FREEGLUT = 'freeglut' FREEGLUT32 = 'freeglut' GL = 'opengl32' GLU = 'glu32' GLU32 = 'glu32' GLUT = 'glut32' GLUT32 = 'glut32' OPENGL32 = 'opengl32' MakeMaker configuration: Checking if your kit is complete... Looks good Writing Makefile for OpenGL ###################### I wonder ... does the problem go away if you create a copy of FreeGLUT/freeglut.lib called FreeGLUT/libfreeglut.a ? (It shouldn't be necessary to do that, but stranger things have happened.) Cheers, Rob
We've been unable to reproduce this error with Strawberry Perl. One thought, is this 32bit or 64bit windows? I don't know if it is even possible but the FreeGLUT that comes with OpenGL is 32bit only....
Птн. Окт. 16 10:56:10 2009, CHM писал: Show quoted text
> We've been unable to reproduce this error with Strawberry Perl. > One thought, is this 32bit or 64bit windows?
32 bit. I was able to install version 0.59 without any problems. -- Alexandr Ciornii, http://chorny.net
Great to hear! I'm marking this fixed in 0.59 and the ticket as Closed. Cheers, Chris