It seems to take about 1 or 2 minutes to compile or expand (or
whatever it's doing to) glut-demo.scm. but then it works and I get the
rotating shapes! I just wasn't waiting long enough before - I don't
think it should take this long though...

same with gears.scm. once gears is running it reports ~18 fps.

On Mon, Apr 20, 2009 at 4:56 PM, Abdulaziz Ghuloum <[email protected]> wrote:
>
> On Apr 20, 2009, at 9:23 AM, Ramana Kumar wrote:
>
>> I put some calls to display in the gears.scm file... the one right
>> below the import line fires (after a second), but the one right above
>> the begin form at the end of the file doesn't. It looks like there are
>> only procedure definitions between them. Any idea why it might not be
>> getting to the end of the file?
>
> Try tracing all the foreign calls and see where it gets stuck.
>
> === modified file 'lib/ypsilon-compat.ikarus.ss'
> --- lib/ypsilon-compat.ikarus.ss        2009-04-13 13:43:20 +0000
> +++ lib/ypsilon-compat.ikarus.ss        2009-04-20 06:51:31 +0000
> @@ -287,7 +287,7 @@
>                       (convert-type return-type)
>                       (list (convert-type arg-type*) ...))
>                     (lookup-shared-object lib 'foreign-name))])
> -             (lambda (t* ...)
> +             (trace-lambda foreign-name (t* ...)
>                (let ([u* (convert-arg x foreign-name t* arg-type*)] ...)
>                  (let ([v (callout u* ...)])
>                    (convert-out-arg x foreign-name t* u* arg-type*)
>
> Running glut-demo.ss, you should get something like:
>
> |(glutInitDisplayMode 18)
> |#<void>
> |(glutInitWindowPosition 100 100)
> |#<void>
> |(glutInitWindowSize 500 500)
> |#<void>
> |(glutInit #(1) #("glut-demo.scm"))
> |#<void>
> |(glutCreateWindow "Hello GLUT")
> |1
> |(glLightfv 16384 4608 #vu8(0 0 0 0 0 0 0 0 0 0 0 0 0 0 128 63))
> |#<void>
> |(glLightfv 16384 4609 #vu8(0 0 128 63 0 0 128 63 0 0 128 63 0 0 128 63))
> |#<void>
> |(glLightfv 16384 4611 #vu8(0 0 0 0 0 0 64 64 0 0 64 64 0 0 0 0))
> |#<void>
> |(glLightModelfv 2899 #vu8(205 204 76 62 205 204 76 62 205 204 76 62 0 0 128
> 63))
> |#<void>
> |(glLightModelfv 2897 #vu8(0 0 0 0))
> |#<void>
> |(glShadeModel 7424)
> |#<void>
> |(glFrontFace 2304)
> |#<void>
> |(glEnable 2896)
> |#<void>
> |(glEnable 16384)
> |#<void>
> |(glEnable 3456)
> |#<void>
> |(glEnable 2977)
> |#<void>
> |(glEnable 2929)
> |#<void>
> |(glDepthFunc 513)
> |#<void>
> |(glutDisplayFunc #<procedure display [char 492 of glut-demo.scm]>)
> |#<void>
> |(glutReshapeFunc #<procedure reshape [char 2806 of glut-demo.scm]>)
> |#<void>
> |(glutVisibilityFunc #<procedure visibility [char 3240 of glut-demo.scm]>)
> |#<void>
> |(glutMouseFunc #<procedure mouse [char 1784 of glut-demo.scm]>)
> |#<void>
> |(glutIdleFunc #<procedure rotate [char 1176 of glut-demo.scm]>)
> |#<void>
> |(glutCreateMenu #<procedure menu [char 2296 of glut-demo.scm]>)
> |#<void>
> |(glutAddMenuEntry "Icosahedron" 1)
> |#<void>
> |(glutAddMenuEntry "Octahedron" 2)
> |#<void>
> |(glutAddMenuEntry "Tetrahedron" 3)
> |#<void>
> |(glutAddMenuEntry "Dodecahedron" 4)
> |#<void>
> |(glutAddMenuEntry "Sphere" 5)
> |#<void>
> |(glutAddMenuEntry "Cone" 6)
> |#<void>
> |(glutAddMenuEntry "Cube" 7)
> |#<void>
> |(glutAddMenuEntry "Torus" 8)
> |#<void>
> |(glutAddMenuEntry "[smooth]" 9)
> |#<void>
> |(glutAddMenuEntry "[flat]" 10)
> |#<void>
> |(glutAddMenuEntry "Exit" 11)
> |#<void>
> |(glutAttachMenu 2)
> |#<void>
> |(glutMainLoop)
> reshape callback 500 500
> | (glViewport 0 0 500 500)
> | #<void>
> ...
>
> Where does it hang on your machine?
>
>
>>> You might want to try building ikarus in 32-bit mode first and see
>>> if that works.
>>
>> What would be the easiest way to do that? I tried putting -m32 in
>> CFLAGS, LDFLAGS and ASFLAGS for configure, but the build failed (I'm
>> not sure whether that's supposed to work - just found it online).
>
> That should work, provided you also have libgmp and libffi
> compiled in 32-bit mode, e.g., pass the appropriate
>  CFLAGS="-m32 -Isomefdir" and
>  LDFLAGS="-m32 -Lsomedir"
> flags.
>
> Aziz,,,
>

Reply via email to