next up previous contents index
Next: To modify current features Up: eFF Programmers' Guide Previous: License and dependencies   Contents   Index

Subsections

Recompiling the software

We have successfully compiled eFF and eFFview on Windows (Microsoft Visual Studio 2005), Mac OS X 10.5 (gcc), and Red Hat Enterprise Linux 5 (gcc and Intel C). We list below the steps we used.

Windows

  1. Compile eFF. Open the file . $ \backslash$eff_distro $ \backslash$eff $ \backslash$eFF.sln in Visual Studio, and click on Build .. Build Solution (F7).
  2. Compile eFFview. Open the file . $ \backslash$eff_distro $ \backslash$effview $ \backslash$eFFview.sln in Visual Studio, and click on Build .. Build Solution (F7).

Mac OS X and Linux

Here we assume the root directory of the distribution is  /Software/eff_distro.
  1. Compile eFF:
      $ cd ~/Software/eff_distro/eff/src
      $ make
    
  2. Compile eFFview:
      $ cd ~/Software/eff_distro/effview/src
      $ make
    

eFFview external dependencies

We have taken care to include with the distribution most of the external libraries needed to run and compile the eFFview program, such as GLUT, GLEW, and libpng. They are linked in as either dynamic libraries whose pathnames are encoded into the binary directly, as in Mac OS X and Windows; or as static libraries, as in Linux.

The exception is the OpenGL and GLU (OpenGL Utility) libraries, which are built in to most modern operating systems.

The existing make system handles all of the dependencies properly, and should require no additional modification from the user. Nonetheless we have provided a list of eFFview dependencies in Table 2.1, not including OpenGL and GLU.


Table 2.1: eFFview dependencies
Package Include Library
Windows    
GLUT ./glut ./glut/glut32.lib, glut32.dll
GLEW ./glew/include ./glew/lib/glew32.lib
libpng ./libpng ./libpng/libpng.lib
zlib ./libpng/zlib ./libpng/zlib/zlib.lib
     
Mac OS X    
GLUT GLUT.framework  
GLEW ./glew/include ./glew/lib/libGLEW.dylib, -lglew
libpng ./libpng/include ./libpng/lib/libpng.dylib, -lpng
     
Linux    
GLUT ./freeglut/include ./freeglut/lib/libglut.a
GLEW ./glew/include ./glew/lib/libGLEW.a
libpng ./libpng/include ./libpng/lib/libpng12.a
zlib ./zlib/include ./zlib/lib/libz.a



next up previous contents index
Next: To modify current features Up: eFF Programmers' Guide Previous: License and dependencies   Contents   Index
Julius 2008-04-29