Ticket #340 (closed bug: fixed)

Opened 5 years ago

Last modified 5 years ago

glut link error on cygwin

Reported by: kjs Owned by: rurban
Priority: blocker Milestone:
Component: library Version: trunk
Severity: medium Keywords:
Cc: Language:
Patch status: Platform: cygwin

Description

Building HEAD of parrot in a fresh cygwin installation gives the following error:

(note that parrot itself is built; this happens after that, preventing me from running make test)

make[1]: Leaving directory `/cygdrive/c/Documents and Settings/klaas-jan.stol/My Documents/parrot6/docs' src/nci_test.c g++ -shared -Wl,--enable-auto-import -Wl,--export-all-symbols -Wl,--stack,8388608 -Wl,--enable-auto-image-base -L/usr/l ocal/lib \

-o runtime/parrot/dynext/libnci_test.dll src/nci_test.o -lcrypt -lgmp -lreadline -lintl

src/glut_callbacks.c g++ -shared -Wl,--enable-auto-import -Wl,--export-all-symbols -Wl,--stack,8388608 -Wl,--enable-auto-image-base -L/usr/lo cal/lib \

-o runtime/parrot/dynext/libglutcb.dll src/glut_callbacks.o \ -L/cygdrive/c/Documents\ and\ Settings/klaas-jan.stol/My\ Documents/parrot6 -lparrot -Wl,--enable-auto-image-base -l

pthread -lm -L/usr/lib -licuuc -licudata -lpthread -lm -lcrypt -lgmp -lreadline -lintl /usr/bin/glut32.dll -lglu32 -lop engl32 src/glut_callbacks.o: In function `glutcbCloseFunc': /cygdrive/c/Documents and Settings/klaas-jan.stol/My Documents/parrot6/src/glut_callbacks.c:1044: undefined reference to

`_glutCloseFunc'

/cygdrive/c/Documents and Settings/klaas-jan.stol/My Documents/parrot6/src/glut_callbacks.c:1046: undefined reference to

`_glutCloseFunc'

src/glut_callbacks.o: In function `glutcbMenuDestroyFunc': /cygdrive/c/Documents and Settings/klaas-jan.stol/My Documents/parrot6/src/glut_callbacks.c:1078: undefined reference to

`_glutMenuDestroyFunc'

/cygdrive/c/Documents and Settings/klaas-jan.stol/My Documents/parrot6/src/glut_callbacks.c:1080: undefined reference to

`_glutMenuDestroyFunc'

src/glut_callbacks.o: In function `glutcbMouseWheelFunc': /cygdrive/c/Documents and Settings/klaas-jan.stol/My Documents/parrot6/src/glut_callbacks.c:1112: undefined reference to

`_glutMouseWheelFunc'

/cygdrive/c/Documents and Settings/klaas-jan.stol/My Documents/parrot6/src/glut_callbacks.c:1114: undefined reference to

`_glutMouseWheelFunc'

src/glut_callbacks.o: In function `glutcbWMCloseFunc': /cygdrive/c/Documents and Settings/klaas-jan.stol/My Documents/parrot6/src/glut_callbacks.c:1146: undefined reference to

`_glutWMCloseFunc'

/cygdrive/c/Documents and Settings/klaas-jan.stol/My Documents/parrot6/src/glut_callbacks.c:1148: undefined reference to

`_glutWMCloseFunc'

collect2: ld returned 1 exit status make: *** [runtime/parrot/dynext/libglutcb.dll] Error 1

Change History

Changed 5 years ago by kjs

  • component changed from language to library

Changed 5 years ago by rurban

  • owner set to rurban
  • status changed from new to assigned

Known problem with glut upstream.

Does this help?

Index: config/auto/opengl.pm
===================================================================
--- config/auto/opengl.pm       (revision 36809)
+++ config/auto/opengl.pm       (working copy)
@@ -167,7 +167,7 @@
             # Prefer Cygwin/w32api over Cygwin/X, but use X when DISPLAY is set
             ($^O eq 'cygwin') ?
              ($ENV{DISPLAY} ? (cygwin => '-lglut -L/usr/X11R6/lib -lGLU -lGL')
-                            : (cygwin => '/usr/bin/glut32.dll -lglu32 -lopengl32'))
+                            : (cygwin => '-lglut32 -lglu32 -lopengl32'))
              : (),
             win32_gcc       => '-lglut32 -lglu32 -lopengl32',
             win32_nongcc    => 'opengl32.lib glu32.lib glut32.lib',

Changed 5 years ago by kjs

  • status changed from assigned to closed
  • resolution set to fixed

This is fixed.

SOLUTION: set DISPLAY first, then run perl Configure.pl, then make.

Note: See TracTickets for help on using tickets.