172 lines
5.4 KiB
Text
172 lines
5.4 KiB
Text
|
May 10, 1999
|
||
|
=============
|
||
|
|
||
|
Here is a quick outline of *one* way you can build FG for Win32 using
|
||
|
a completely free development environment.
|
||
|
|
||
|
|
||
|
1. Install cygwin (latest is version 20.1)
|
||
|
|
||
|
http://sourceware.cygnus.com/cygwin/
|
||
|
|
||
|
Now called "full.exe"
|
||
|
|
||
|
(I believe "user.exe" is included in full.exe so you don't need to
|
||
|
install those separately)
|
||
|
|
||
|
|
||
|
2. This step may now be optional. I haven't tried without, but
|
||
|
cygwin is now egcs-1.1 (which should work I think.) This step
|
||
|
just upgrades to the latest greatest version of egcs.
|
||
|
|
||
|
Install egcs binary release for cygwin-20.x (latest egcs is version 1.1.2)
|
||
|
|
||
|
http://www.xraylith.wisc.edu/~khan/software/gnu-win32/egcs.html
|
||
|
|
||
|
For instance, if you've downloaded egcs to /tmp:
|
||
|
|
||
|
cd //c/cygnus/cygwin-b20
|
||
|
tar xzvf //c/tmp/egcs-1.1.2-cygb20.tar.gz
|
||
|
|
||
|
3. Install the free win32 api library (latest version is 0.1.5) from:
|
||
|
|
||
|
http://www.acc.umu.se/~anorland/gnu-win32/w32api.html
|
||
|
|
||
|
(Recommend you install in /usr/local)
|
||
|
|
||
|
Run "make; make install"
|
||
|
|
||
|
|
||
|
4. Also download glut import libraries from extra section at:
|
||
|
|
||
|
http://www.acc.umu.se/~anorland/gnu-win32/w32api.html
|
||
|
|
||
|
copy these libs to /usr/local/lib/lib*.a
|
||
|
|
||
|
|
||
|
5. Install the Mesa-3.0 includes:
|
||
|
|
||
|
Feel free to download mesa from www.mesa3d.org and grab them from
|
||
|
there. Line #453 of glut.h needs to be edited to look like the
|
||
|
following:
|
||
|
|
||
|
GLUTAPI int APIENTRY glutCreateMenu(void (GLUTCALLBACK * func)(int));
|
||
|
|
||
|
Or you can grab just these headers from the fgfs ftp site.
|
||
|
|
||
|
ftp:://ftp.flightgear.org/pub/fgfs/Win32/Mesa-3.0-includes.zip
|
||
|
|
||
|
Copy these includes to /usr/local/include/gl/*.h
|
||
|
|
||
|
|
||
|
6. Install the glut dll's somewhere in your path:
|
||
|
|
||
|
You can fetch these from the fgfs site:
|
||
|
|
||
|
ftp:://ftp.flightgear.org/pub/fgfs/Win32/glut-dll-3.7.zip
|
||
|
|
||
|
|
||
|
7. Build and install plib (latest version is 1.0.5/6?) from:
|
||
|
|
||
|
http://www.woodsoup.org/~sjbaker/plib (check url)
|
||
|
|
||
|
Recommend you run configure as follows:
|
||
|
|
||
|
CFLAGS="-O2 -Wall" CXXFLAGS="-O2 -Wall" CPPFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib ./configure --prefix=/usr/local --includedir=/usr/local/include/plib
|
||
|
|
||
|
make; make install
|
||
|
|
||
|
|
||
|
8. Fetch the Flight Gear code which can be found at:
|
||
|
|
||
|
ftp://ftp.flightgear.org/pub/fgfs/Downloads/Source/
|
||
|
|
||
|
Grab the latest "FlightGear-X.XX.zip" or if you want to live on the
|
||
|
edge you can try one of the nightly snapshots in:
|
||
|
|
||
|
ftp://ftp.flightgear.org/pub/fgfs/Downloads/Source/Snapshots
|
||
|
|
||
|
|
||
|
9. 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!
|
||
|
|
||
|
|
||
|
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.
|
||
|
|
||
|
|
||
|
10. 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.
|
||
|
|
||
|
|
||
|
11. Build the executable. Run:
|
||
|
|
||
|
make
|
||
|
|
||
|
|
||
|
12. 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".
|
||
|
|
||
|
|
||
|
13. Download and install the (most recent!) scenery and texture files.
|
||
|
|
||
|
|
||
|
14. 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.
|
||
|
|
||
|
|
||
|
15. 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)
|
||
|
|
||
|
|
||
|
16. I appreciate feedback. Tell me if it works! If it doesn't, tell me
|
||
|
what went wrong. My email is curt@me.umn.edu
|