Gandalf FAQ

Here are some frequently asked questions about Gandalf.

What are the prerequisites to install Gandalf?

You will need an ANSI/ISO C compiler. For Unix systems you will need Gnu libtool to be installed on your system. If PNG, JPEG and TIFF image format I/O libraries are installed, Gandalf will find and use them through use of the Gnu "configure" script (under Windows these features need to be specified manually; see the gandalf/INSTALL file). The LAPACK linear algebra library will also be used if available, although there are internal substitutes for most of the LAPACK functions used by Gandalf. To use the display features you will also need OpenGL to be installed with the GLUT toolkit.

What systems will Gandalf work on?

Gandalf has been compiled and tested on Linux (PC), IRIX 6.5, Solaris and MSVC 6. It has also been cross-compiled on a Power PC. Basically any system with an ANSI/ISO C compiler should be OK.

Why doesn't my program display any windows?

A common misunderstanding for people who haven't programmed in an event-driven environment is to forget to include a glutMainLoop() call, which passes control to the GLUT event handler. When you create a window using gan_display_new_window(), gan_display_new_window_array() or gan_image_display_new_window(), you need to specify callbacks using glutDisplayFunc() so that the windows will be updated when an event involving the window is processed. See gandalf/image/bitmap_test.c and gandalf/vision/vision_test.c for examples.

Why does the linker complain about undefined symbols?

The usual problem here is a conflict between which libraries are actually available and which libraries Gandalf thinks are available. This is especially a problem under Windows where the libraries need to be specified manually. Another possibility is that the installed libraries are old versions with slightly different functions.