June 15, 1998 ============= Here is a quick outline of *one* way you can build FG for Win32 using a completely free development environment. 1. Install and configure the Cygnus Gnu-Win32 development environment. The latest version is Beta 19. The main Cygnus Gnu-Win32 page is at: http://www.cygnus.com/misc/gnu-win32/ You can download the Cygnus Gnu-Win32 compiler from: ftp://ftp.cygnus.com/pub/gnu-win32/latest/cdk.exe To install, just run the file: "cdk.exe" by double-clicking in windows explorer. Be sure to read this package's README : http://www.cygnus.com/misc/gnu-win32/readme_toc.html After installing the cygnus compiler and the usertools you should find a program group "Cygnus" in your start menu. 2. Compiling Flightgear requires two updates of the Cygnus environment. First, install Cygwin32 beta 19.1 upgrade which is available from: ftp://ftp.cygnus.com/pub/gnu-win32/latest/b19.1-update/ Make sure to follow the directions you find there (it's less than 200Kb to download). Make sure you subsitute all the cygwinb19.dll's around (particularly the one in \windows\system in case you put it there) Next, install the EGCS upgrade which is available from: http://www.xraylith.wisc.edu/~khan/software/gnu-win32/egcs.html Again, make sure you follow the directions. (This is several megabytes to download.) It is recommended that you unroll the egcs stuff over top of your cygwin32 installation. It will replace many of the files. 3. Install the OpenGL dynamic link libraries. If you have an accelerated 3d card, it is highly recommended you install the hardware OpenGL drivers for your specific card. If you do not have an accelerated 3d card, you can install the SGI software optimized drivers. For this purpose, get the file sgi-opengl2.exe from the flight gear project site. This is a win95/winnt self extracting installation program. Install it by double-clicking in windows explorer. 4. Fetch the Flight Gear code and special Win32 libraries. These can be found at: http://www.menet.umn.edu/~curt/fgfs/Downloads/Source/ Grab the latest "FlightGear-X.XX.zip" and "win32-libs-X.XX.zip" files. 5. Unpack the FG source code. Run: pkunzip -d FlightGear-X.XX.zip Be sure to use the -d option. This will create all the needed subdirectories. Otherwise you will have one big mess! Trust me! 6. Change to the newly created FlightGear-X.XX directory and unpack the Win32 libraries. Run: cd FlightGear-X.XX pkunzip -d win32-libs-X.XX.zip 7. You will find a file called "install.exe" In the Win32 directory created when you unzip the win32-libs-X.XX.zip file. This version of install.exe should replace the one in your H-i386-cygwin32\bin directory - it's sole claim to fame is that it "understands" that when many calls to it say "install foo" they mean "install foo.exe". If you skip this step, and attempt an install with the older version present, "make install" will fail. Side Note: we need to make a distinction between the "build tree" and the "install tree." The "build tree" is what we've been talking about up until this point. This is where the source code lives and all the compiling takes place. Once the executables are built, they need to be installed someplace. We shall call this install location the "install tree". This is where the executables, the scenery, the textures, and any other run-time files will be located. Open the Cygnus bash via its entry in the Start menu. Mount the drive as follows (assuming you unpacked the code on d:): mkdir /mnt mount d: /mnt You only have to do this once. The drive stays mounted (until you umount it) even through reboots and switching off the machine. 8. Configure the make system for your environment and your "install tree". Tell the configure script where you would like to install the exectuables and all the scenery and textures by using the "--prefix" option. In the following example the base of the "install tree" is "\FlightGear". Stay within the bash shell. Run: ./configure --prefix=/mnt/FlightGear Side Note: the make procedure is designed to link against opengl.dll, glu.dll, and glut.dll. However, some accelerated video cards require you to link against opengl32.exe, glu32.exe, and glut32.exe. If this is the case for your video card, you can edit .../Simulator/Main/Makefile and rename these three libraries to their version "32" counterparts. There is only one place in this make file where these files are listed. 9. Build the executable. Run: make 10. Assuming you have installed the updated version of install.exe (see earlier instructions) you can now create and populate the install tree. Run: make install You can save a significant amount of space by stripping all the debuging symbols off of the executables. To do this run: strip file.exe Important Note: so far you've built and installed the simulator and related tools. Before you can actually try it out, you need to make sure you have the appropriate scenery and texture downloaded and unzip'ed in your "install tree". 11. Download and install the (most recent!) scenery and texture files. 12. In Windows explorer, change to /FlightGear/bin within your install tree. Call runfg.bat which will set the environment variable FG_ROOT and call the executable. 13. Try it out! There are several ways to run flight gear once it has been installed. The simplest is as follows. Run: \FlightGear\bin\runfg.bat (command shell) 14. I appreciate feedback. Tell me if it works! If it doesn't, tell me what went wrong. My email is curt@me.umn.edu