[gambit-list] Re: Help with FFI related error message

Marc Feeley feeley at IRO.UMontreal.CA
Sun Apr 10 19:11:16 EDT 2005


> /usr/local/Gambit-C/bin/gsi lorenz.scm
> *** ERROR IN "lorenz.scm"@36.1 -- /usr/local/Gambit-C/bin/gsi: undefined symbol: ____20_glut_2d_ffi_2e_o1
> (load "glut-ffi.o1")
> 
> I assume that ____20_glut_2d_ffi_2e_o1 is the symbol.  Only problem is
> I can figure out why it's looking for that symbol, not too mention the
> curious coincidence that the symbol it's looking for is the name of
> the file I am trying to load.

Here's a guess... did you rename this file, i.e.

    mv glut-ffi.o2 glut-ffi.o1

That will not work.  The function ____20_glut_2d_ffi_2e_o1 is
generated by the Gambit-C compiler in the file "glut-ffi.o1" and
corresponds to the initialization function.  It has the "o1" part to
distinguish the function from the initialization function
____20_glut_2d_ffi_2e_o2 generated in "glut-ffi.o2", if you happen
to want to want to load "glut-ffi.o1" and later "glut-ffi.o2" in the
same execution of gsi (some operating systems get confused when there
are two functions with the same name).

Another possibility is that your operating system adds a "_" prefix,
or suffix to the symbols and the configure script did not detect this
(check the definition of the symbols ___IMPORTED_ID_PREFIX and
___IMPORTED_ID_SUFFIX at the end of include/config.h).

Marc



More information about the Gambit-list mailing list