4 Here is a quick outline of *one* way you can build FG for Win32 using
5 a completely free development environment.
8 1. Install and configure the Cygnus Gnu-Win32 development
9 environment. The latest version is Beta 19. The main
10 Cygnus Gnu-Win32 page is at:
12 http://www.cygnus.com/misc/gnu-win32/
14 You can download the Cygnus Gnu-Win32 compiler from:
16 ftp://ftp.cygnus.com/pub/gnu-win32/latest/cdk.exe
18 To install, just run the file: "cdk.exe" by double-clicking in
19 windows explorer. Be sure to read this package's README :
21 http://www.cygnus.com/misc/gnu-win32/readme_toc.html
23 After installing the cygnus compiler and the usertools you should
24 find a program group "Cygnus" in your start menu.
27 2. Install the Silicon Graphics OpenGL dynamic link libraries. For
28 this purpose, get the file sgi-opengl2.exe from the flight gear
29 project site. This is a win95/winnt self extracting installation
30 program. Install it by double-clicking in windows explorer.
33 3. Fetch the Flight Gear code and special Win32 libraries. These can
36 http://www.menet.umn.edu/~curt/fgfs/Downloads/Source/
38 Grab the latest "FlightGear-X.XX.zip" and "win32-libs-X.XX.zip"
42 4. Unpack the FG source code. Run:
44 pkunzip -d FlightGear-X.XX.zip
46 Be sure to use the -d option. This will create all the needed
47 subdirectories. Otherwise you will have one big mess! Trust me!
50 5. Change to the newly created FlightGear-X.XX directory and unpack
51 the Win32 libraries. Run:
54 pkunzip -d win32-libs-X.XX.zip
59 You will find a file called "install.exe" In the Win32 directory
60 created when you unzip the win32-libs-X.XX.zip file.
62 This version of install.exe should replace the one in your
63 H-i386-cygwin32\bin directory - it's sole claim to fame is that it
64 "understands" that when many calls to it say "install foo" they
65 mean "install foo.exe". If you skip this step, and attempt an
66 install with the older version present, "make install" will fail.
68 Side Note: we need to make a distinction between the "build tree" and
69 the "install tree." The "build tree" is what we've been talking
70 about up until this point. This is where the source code lives
71 and all the compiling takes place. Once the executables are
72 built, they need to be installed someplace. We shall call this
73 install location the "install tree". This is where the
74 executables, the scenery, the textures, and any other run-time
75 files will be located.
78 7. Configure the make system for your environment and your "install
79 tree". Tell the configure script where you would like to install
80 the exectuables and all the scenery and textures by using the
81 "--prefix" option. In the following example the base of the
82 "install tree" is "\FlightGear". Run:
84 ./configure --prefix=\FlightGear
86 Side Note: the make procedure is designed to link against opengl.dll,
87 glu.dll, and glut.dll. However, some accelerated video cards
88 require you to link against opengl32.exe, glu32.exe, and
89 glut32.exe. If this is the case for your video card, you can edit
90 .../Simulator/Main/Makefile and rename these three libraries to
91 their version "32" counterparts. There is only one place in this
92 make file where these files are listed.
95 8. Build the executable. Run:
100 9. Assuming you have installed the updated version of install.exe (see
101 earlier instructions) you can now create and populate the install
106 You can save a significant amount of space by stripping all the
107 debuging symbols off of the executables. To do this run:
111 Important Note: so far you've built and installed the simulator and
112 related tools. Before you can actually try it out, you need to
113 make sure you have the appropriate scenery and texture downloaded
114 and unzip'ed in your "install tree".
117 10. Download and install the scenery and texture files.
120 11. Set the runtime environment variable to point to the base of your
123 export FG_ROOT=/FlightGear (bash)
124 set FG_ROOT=\FlightGear (command shell)
127 12. Try it out! There are several ways to run flight gear once it has
128 been installed. The simplest is as follows. Run:
130 \FlightGear\bin\runfg.bat (command shell)
133 13. I appreciate feedback. Tell me if it works! If it doesn't, tell me
134 what went wrong. My email is curt@me.umn.edu
137 ===========================================================================
139 !!!IMPORTANT ADDENDUM FOR FlightGear 0.48 and UP!!!
141 For those using Cygwin32 to build from source on win95/NT ... I've
142 run into a show stopping bug with the cygnus compiler where it can't
143 compile legit C++ code that includes the string class as a part of a
144 structure built from the STL. Fortunately, EGCS fixes this and many
145 other problems with the cygwin32 compiler. If you are a cygwin32 user
146 and want to be able to compile FG 0.48 you will have to upgrade your
147 Cygnus installation from beta 19 to beta 19.1, and overlay the EGCS
148 update over top of the Cygnus installation.
150 If anyone is interested I can send them a small test program that
151 exercises this bug in the cygwin32 compiler, but passes with flying
154 The Cygwin32 beta 19.1 upgrade is available from:
156 ftp://ftp.cygnus.com/pub/gnu-win32/latest/b19.1-update/
158 Make sure to follow the directions you find there (it's less than
161 The EGCS upgrade is available from:
163 http://www.xraylith.wisc.edu/~khan/software/gnu-win32/egcs.html
165 Again, make sure you follow the directions. (This is several
166 megabytes to download.) It is recommended that you unroll the egcs
167 stuff over top of your cygwin32 installation. It will replace many of
168 the files. I did this today and if you carefully follow the
169 directions you shouldn't have any trouble. :-)
171 Note: you don't have to wait for FG 0.48 to be released to upgrade to
172 EGCS, it should build earlier versions of FG just fine. I hope
173 ... :-) I've gone through the process once myself, so I guess that
174 makes me the expert. Feel free to forward questions to me at: