From c3c6f33e87e1f47aa48600fe3717266b91c3eefc Mon Sep 17 00:00:00 2001 From: curt Date: Tue, 15 Feb 2000 23:20:36 +0000 Subject: [PATCH] Reorg. --- docs-mini/FG-FAQ.v3 | 263 +++++++++++++++++++++++++++++++++++ docs-mini/README.Linux | 233 +++++++++++++++++++++++++++++++ docs-mini/README.MacOS | 24 ++++ docs-mini/README.Unix | 209 ++++++++++++++++++++++++++++ docs-mini/README.Win32 | 171 +++++++++++++++++++++++ docs-mini/README.Win32-X | 85 +++++++++++ docs-mini/README.anoncvs | 10 ++ docs-mini/README.autoconf | 43 ++++++ docs-mini/README.plib | 15 ++ docs-mini/README.running | 178 ++++++++++++++++++++++++ docs-mini/README.running.new | 178 ++++++++++++++++++++++++ docs-mini/README.src | 58 ++++++++ 12 files changed, 1467 insertions(+) create mode 100644 docs-mini/FG-FAQ.v3 create mode 100644 docs-mini/README.Linux create mode 100644 docs-mini/README.MacOS create mode 100644 docs-mini/README.Unix create mode 100644 docs-mini/README.Win32 create mode 100644 docs-mini/README.Win32-X create mode 100644 docs-mini/README.anoncvs create mode 100644 docs-mini/README.autoconf create mode 100644 docs-mini/README.plib create mode 100644 docs-mini/README.running create mode 100644 docs-mini/README.running.new create mode 100644 docs-mini/README.src diff --git a/docs-mini/FG-FAQ.v3 b/docs-mini/FG-FAQ.v3 new file mode 100644 index 000000000..98f982530 --- /dev/null +++ b/docs-mini/FG-FAQ.v3 @@ -0,0 +1,263 @@ +------- Flight Gear FAQ v0.03 14/04/1999 --------------------- + +Welcome to the Flight Gear FAQ. Here you find Questions/URL's/Tips about +Flight Gear mainly asked in the mailing lists. +This Document is divided into 5 sections: + + 1. Distribution Questions + 2. Compiling Questions + 3. User Questions + 4. Windoze related Questions + 5. ??? + + +-------- Index ----------- + +Section One Distribution : + +1) Where can I get the latest version of this FAQ ? +2) What else is a must read ? +3) Where is the latest distribution of Flight Gear... ? +4) Where can I find the newest snapshots ? +5) Where can I fly ? + + +Section Two Compiling : + +1) Flight Gear doesn't smooth compile though configured succesfully +2) "gpc.c" and "gpc.h" files +3) Compiler could not find gfc/... +4) Red Had 5.1 / 5.2 related probs + +Section Three User : + +1) Upside down after crash? +2) Ailleron vs Rudder +3) FG is sooo slow (1 fps). + +Section Four Windoze : + +Section Five ??? : + +======================================================================== + + + +SECTION ONE : Distribution Questions + +1.1) Where can I get the latest version of this FAQ ? + +Ans: The latest version is stored at + http://www.online-club.de/home/olk/progs/flightgear + and it's updates are announced at flightgear mailing lists. + +------------------------------------------------------------------------ +1.2) What else is a must read ? + +Ans: Please also check out the "Getting started"-document which + provides much, much detailed information. + +------------------------------------------------------------------------ +1.3) Where is the latest distribution of Flight Gear... ? + +Ans: ftp://ftp.flightgear.org/pub/fgfs/Source + +------------------------------------------------------------------------ +1.4) Where can I find the newest snapshots ? + +Ans: ftp://ftp.flightgear.org/pub/fgfs/Source/Snapshots + +------------------------------------------------------------------------ +1.5) Where can I fly ? + +Ans: In front of your monitor, hehehe... + +[FG until v0.58]: + Curt has a nice collection of some flight-scenarios in the U.S. + have a look at the descriptions and needed files + http://www.flightgear.org/Places/ + + There are also scenarios located at: + ftp://ftp.flightgear.org/pub/fgfs/Scenery/ + There you find currently AZ-central, Equador, Spain, Munich (DE) + + Frankfurt (DE) can be found at + http://people.frankfurt.netsurf.de/teddy/frankfurt.tar.gz + + Switzerland scenario at + http://www.2sic.ch/Hoshy/flightgear.html + +[FG after v0.59 incl.]: + Due to changes to the scenery format, which is currently v0.2, + the old Scenery Files (see above) are not compatible to FlightGear + v0.59 and later. + + The folowing Scenery Files are recommended instead: + + Alaska (Prince William Sounds) Scenario located at + ftp://ftp.flightgear.org/pub/fgfs/Scenery/new-format-demo.tar.gz + + You also need the fgfs-base-0.59.tar.gz package with new graphics + ftp://ftp.flightgear.org/pub/fgfs/Shared + +------------------------------------------------------------------------ + +======================================================================== + +SECTION TWO : Compiling questions + For the time beeing more Unix/Linux related. + + +2.1) Flight Gear doesn't smooth compile though configured succesful + +Ans: The fgfs-sources contain some Scenery Tool Kits beeing yet beta, + they use libraries written by others so there is often some + code/makefile tweaking needed. But this doesn't matter since + the Flight Gear executable is then already compiled. + Just make install from toplevel Makefile directory + and up you go... + +----------------------------------------------------------------------- +2.2) "gpc.o" and "gpc.h" + Can anyone advise me on what to do with the gpc.c and gpc.h files. + I retrieved them OK after "configure"reported that they were needed. + But, I don't know what I'm supposed to do with them. + +Ans: Flight Gear's Makefile expects libgpc to be on your System. + Try this: gcc -c gpc.c + ar cru libgpc.a gpc.o + Then copy libgpc.a to some place that your compiler knows about such + as /usr/local/lib, and then try compiling again. A better idea would be + to set LIBRARY_PATH to point to the location where you installed + the libgpc.a file instead of dropping it into a system-wide library + directory. + + Caveat Emptor: + One word of warning to Linux / Unix users. I recently discovered + that the gnu pascal compiler is also called "gpc" and comes with a + libgpc.a I know this has caused confusion on the part of at least one + or two people. + +------------------------------------------------------------------------- +2.3) compiler could not find gfc/... + +e.g. main.cxx:32: gfc/gshapefile.h: No such file or directory + main.cxx:30: gfc/gadt_polygon.h: No such file or directory + main.cxx:31: gfc/gdbf.h: No such file or directory + main.cxx:32: gfc/gshapefile.h: No such file or directory + there is no gadt_polygon.h on my system. What library does it belong to ? + +Ans: This is part of the GFC library it is not needed to run FlightGear + as it is part of the beta Scenery Tool Kit + GFC -- Geographic Foundation Classes library + http://www.geog.psu.edu/~qian/gfc/index.html + +-------------------------------------------------------------------------- +2.4) Red Had 5.1/5.2 related problems + +I quickly ran into problems with the basic_string library. (see undefined ref.) + + c++ -g -O2 -L/usr/local/lib -L/usr/X11R6/lib -o testbucket + testbucket.o../../Lib/Bucket/libBucket.a -lmtestbucket.o: In function + FGBucket::gen_base_path(void)':/usr/include/g++/std/bastring.h:75: undefined + reference to Basic_string, + __default_alloc_template>::Rep::clone(void)'collect2: ld returned 1 + exit statusmake[2]: *** [testbucket] Error 1 + + +Ans: I ran into the same problem on my RedHat 5.2 system (brand new). + After some searching I found out that it's got to do with a 'bug' in + the stdlibc++libraries. I picked up libstdc++-2.9.0-2.i386.rpm, + installed it and FGFS compiled just fine (after some other problems + with gfc, I had to pick up the one from the fgfs site). However, some + other packages must have the libstdc++-2.8 libraries.... + +Ans: I also solved it with the 2.8 libraries by including + /usr/include/g++/std/bastring.cc into the example programs. + I believe this can be done since it's a template. + +========================================================================== + +SECTION THREE : User Questions + + +3.1) Upside down after crash ? + After beeing crashed on the ground the navion continues to fly + upside-down and it stucks at almost groundlevel, + (like cruse missile ;-) flying with a reverse heading as before + and "balancing" left and right. The only solution seems to be + to give full throttle and then at +80-90 kts it can move up by + pressing one of the "elevator arrows" like a rocket doing a loop. + But hey, that's nerving bc the loop is allways to short and the + responding time of navion (correcting the "roll") is also to short, + which results in crash so you have to re-throttle again. + + +Ans: In his infinite wisdom the FlightGear GrandMaster decided + that planes were to valuable to allow them to be destroyed + by novice pilots who seemed to crash alot. + + The result of this as you have noticed is that + with a little practice an ingenuity you can trim the ship + to fly inverted along the ground. + + The trick to learn is to roll back to normal (non inverted) + do this by nursing the elevator to get to about 500 feet or so + and use the aierlons to snap roll 180*. + + This is all good avionics except for the plane not destroying itself. + + Remember the controls work in reverse when you are inverted + and keep that airspeed up !!! + +--------------------------------------------------------------------------- +3.2) Ailleron vs Rudder + What's the difference. Both help the plane to turn, that i did understand + +Ans: There is a bit of info on aileron vs. rudder here: + http://www.arundel.net/xplane/html/crosswind.html + http://www.monmouth.com/~jsd/how/ + +--------------------------------------------------------------------------- +3) FG is sooo slow (1 fps), though i got hardware acceleration like + Voodoo/Voodoo2 etc... What's the reason ? + +Ans: Flight Gear supports hardware acceleration, but it seems not + to be activated. Even a P-400 goes berzerk using software rendering. + First check out if you have MESA with glide support. + Linux Users enter "make linux-glide" to compile Mesa + + Check out your environment variables, whether you use soft or hard-ware + rendering. Here an example that should work : + + You have to tell Mesa to use fullscreen + + MESA_GLX_FX=fullscreen + + You also must set the appropriate Voodoo vars, here is for Voodoo2 + the Voodoo1 vars may slightly differ. + + SSTV2_BGAMMA=1.00 + SSTV2_FASTMEM_RAS_READS=1 + SSTV2_FASTPCIRD=1 + SSTV2_GAMMA=1.00 + SSTV2_GGAMMA=1.00 + SSTV2_GRXCLK=95 + SSTV2_RGAMMA=1.00 + SSTV2_SCREENREFRESH=60 + SSTV2_SWAP_EN_WAIT_ON_VSYNC=0 + SSTV2_VGA_PASS=0 + + The Voodoo vars can be obtained at: + http://www.bahnhof.se/~engstrom/e_3dfxvars.htm + + Another good tool is glide-control to set the env. vars, go get it at: + http://www.ling.ed.ac.uk/~oliphant/gc + + Check also the help-startup-screen of Flight Gear: + fgfs --help + +=========================================================================== + +Oliver Delise Maintainer of FAQ +Please send any comments/suggestions/flames or beer to delise@rp-plus.de diff --git a/docs-mini/README.Linux b/docs-mini/README.Linux new file mode 100644 index 000000000..a989b4bf8 --- /dev/null +++ b/docs-mini/README.Linux @@ -0,0 +1,233 @@ +I. GENERAL LINUX INSTRUCTIONS +============================== + +This is a short description of the things that need to be done to get +FlightGear up and running under Linux. + +1. Prerequisites: + +You need to understand the concepts of 3D acceleration under Linux and +the needed libraries. An excellent source of information is the "Linux +Quake-HOWTO" which can be found at + + http://www.linuxquake.com + +If anything seem to be wrong with your 3D setup, check there first! + +You need Linux of course (any flavour) and a 3DFX-card (Voodoo1 in my +case). 3D rendering without hardware support can force even the +fastest PII to its knees. To make use of the accelerator board you +need" + +- the GLIDE library installed. Grab it at: + + http://www.3dfx.com/software/download_glidel.html + + and install. There is even an install script contained that will do + things for you. The canonical place for GLIDE is /usr/local/glide, + if you prefer another location, you'll have to edit the Makefile for + FlightGear by hand. Be sure to read and understand the file + /usr/local/glide/README. + +- the MESA library version 3.0 (or greater) installed. + + Grab it at: + + http://www.mesa3d.org/ + + unpack it and run "make linux-glide" in the Mesa directory. Follow + the instructions in the README file, take a close look at + README.3DFX and play with the demo programs. Relax, rejoice :-) + +- the GLUT library version 3.7 (or greater, aka GameGLUT) installed. + + Grab it at: + + http://reality.sgi.com/opengl/glut3/glut3.html + + Note: glut-3.7 is included with Mesa 3.0 so if you've already + grabbed the latest version of mesa, you should have everything you + need. + + Alternatively, you can use the 3D-stuff that came along with your + Linux distribution. At least RedHat (5.3 and later) and S.u.S.E. 6.0 + (or later) contain all the things you need. + + - (optional) the 3DFX kernel module. + + Without this thingy installed, access to your accelerator board + needs to be SUID root, which bad practice (and a _huge_ security + hole). Get the 3DFX module from + + http://www.xs4all.nl/~carlo17/3dfx/index.html + + and install it: + + mkdir 3dfx + cd 3dfx + tar xvfz ../Dev3Dfx-2.7.tar.gz + make + cp 3dfx.o /lib/modules/`uname -r`/misc + mknod /dev/3dfx c 107 0 + insmod 3dfx + + alternatively, you can get the RPM from there ind use rpm for + installation. + + - Steve Baker's plib library. + + get it from + + http://www.woodsoup.org/projs/plib/ + + and follow the instructions in README.plib. + + - (optional) the gpc libraries. + + Read the README.gpc files to understand what they are good for + and decide whether you need to download them. If you don't want to + build your own sceneries, you might not need them. + +2. Build FlightGear: + +You will need the following files: + + FlightGear-x.xx.tar.gz (source code) + +which can be found under + + ftp://ftp.flightgear.org/pub/fgfs/Source/ + +and the support files located at + + ftp://ftp.flightgear.org/pub/fgfs/Binaries/ + +the file is called + + fgfs-base-x.xx.tar.gz (data files) + +Ok, now that you got all the stuff, let's proceed towards installation. + +Unpack FlightGear-x.xx.tar.gz using : + + tar xvfz FlightGear-x.xx.tar.gz + +and cd info FlightGear-x.xx. Run: + + ./configure + +and wait a few minutes. configure knows about a lot of options. Have a +look at the file INSTALL in the FlightGear source directory to learn +about them. If run without options, configure assumes that you will +install the data files under /usr/local/lib/FlightGear. Assuming +configure finished successfully, simply run + + make + +and wait for the make process to finish. Now become root (for example +by using the su command) and type + + make install + +This will install the binaries in /usr/local/bin. Notice that the name +of the FlightGear binary is "fgfs". + +Another problem with Linux/Glide is permission-related. All programs +accessing the Accelerator board need root permissions (or the kernel +module mentioned above installed). I _strongly_ recommend the latter. + + +3. Install the data files + +Change to /usr/local/lib + + tar xvfz WHERE_YOU_DOWNLOADED_THE_FILES/fgfs-base-x.xx.tar.gz + +That's it... + +4. Fly! + +If everything went ok, simply type + + runfgfs + +at the prompt. You should see the FlightGear splash-screen and a few +seconds later you'll find youself somewhere in the desert, ready for +take-off. + +5. Strange things happen... + +A note on the behaviour of Voodoo boards: + +Your card comes packaged with a loop-through-cable. If you have only +one monitor, then the Voodoo will take it over when used. This means +that all the applications on your desktop will continue running but +you'll only see the FlightGear screen. If your window manager uses a +focus-follows-mouse policy, don't move the mouse. If you lose the +focus, there's no way to shut down FlightGear graciously! Better +solution: Use two monitors, one for your desktop, connect the other +one to your accelerator. You'll then get a window on your desktop +which manages all keyboard events and you're still able to see your +desktop. + +A final note: There are several types of VooDoo cards out there, so be +sure to get the correct version of Glide! + +Enjoy! + +6. Conclusion + +I hope this document provides some help. If it does, send virtual/real +beer to me, if not flame me! + +Bernhard H. Buckel + + + +II. RedHat Linux Notes +======================= + +Summary: There are known problems with the versions of libstdc++ that +ships with both RedHat-5.1 and RedHat-5.2. You need to upgrade your +libstdc++ before attempting to build flight gear on a RedHat system. + +Raymond de Vries writes: I ran into [this] problem on +my RedHat 5.2 system (brand new). After some searching I found out +that it's got to do with a 'bug' in the stdlibc++ libraries. I picked +up libstdc++-2.9.0-2.i386.rpm, installed it and FGFS compiled just +fine. However, some other packages must have the libstdc++-2.8 +libraries.... + +BTW I also solved it with the 2.8 libraries by including +/usr/include/g++/std/bastring.cc into the example programs. I believe +this can be done since it's a template, correct me if I'm wrong. + + +III. Linux/AXP Notes +==================== + +As of 2/19/99 I'm not aware of any glide port to Linux/AXP so it's +software rendering only for now. :-( + +This following information is contributed by "Daniel J. Frasnelli" + + +1) Mesa was not built correctly by default. I had to add the "-mieee" +flag to the Make-config for Mesa-3.1beta1 to fix the problem. After +building and installation, all of the problems I had previously with +GL programs under AlphaLinux disappeared. + +2) I also had to set the '-mieee' flag in $CFLAGS before configuring +and building FGFS. The -mieee switch fixes floating point exception +handling. + +I heavily optimized both Mesa and FGFS, using the libffm "fast math +library for Alpha" in preference over the default libm, sticking all +sorts of strange flags in $CFLAGS, etc. These flags should be +adjusted for your specific architecture: + + export CFLAGS="-mieee -mcpu=ev56 -Wa,-m21164a -pipe -g" + export CXXFLAGS="-mieee -mcpu=ev56 -Wa,-m21164a -pipe -g" + ./configure + + diff --git a/docs-mini/README.MacOS b/docs-mini/README.MacOS new file mode 100644 index 000000000..91cf66d98 --- /dev/null +++ b/docs-mini/README.MacOS @@ -0,0 +1,24 @@ +README.MacOS + +Jan 12, 1999. + +Here is a quick outline of *one* way you can build FG for MacOS: + + +1. Install Metrowerks CodeWarrior Pro 3 + + +2. Install the 'Mesa 3D Graphics Library' *** URL + + +3. Fetch the Flight Gear code. *** URL + + +4. Fetch the 'MWCWP3 Support' *** URL + + +5. Open 'MWCWP3 Support:Simulator:Simulator.mcp' and you are ready to compile. + + +6. I appreciate feedback. Tell me if this works for you ! If it doesn't, tell me + what went wrong. My email is *** who want do to the first-level support ? diff --git a/docs-mini/README.Unix b/docs-mini/README.Unix new file mode 100644 index 000000000..9494facf8 --- /dev/null +++ b/docs-mini/README.Unix @@ -0,0 +1,209 @@ +If you are reading this in hopes that you will find the answer to a +specific question, please send the question to curt@flightgear.org and +suggest that I include the answer here. + + +I. Compilers and Portability +============================ + +Flight Gear is known to build with egcs-1.1 and higher, as well as +gcc-2.8 and higher. Your mileage may vary with earlier versions of +these compilers although support for gcc-2.7.x is mostly there. + +For other platforms where you may have access to native compilers, +again your mileage may vary. We would like to support as many +different compilers and platforms as possible. Please relay any +changes you make (or problems you encounter) back to +curt@flightgear.org, so that in the future we can better support your +platform and your compiler. I have access to a few different +platforms, but I must depend on others to make sure their favorite +platform and compiler is well supported. + + +II. GLUT +======== + +Flight Gear requires GLUT version 3.7 or later (aka GameGLUT._ GLUT +needs to be installed on your system before you can build Flight Gear. +GLUT can be found at: + + http://reality.sgi.com/opengl/glut3/glut3.html + +GLUT (pronounced like the glut in gluttony) is the OpenGL Utility +Toolkit, a window system independent toolkit for writing OpenGL +programs. It implements a simple windowing application programming +interface (API) for OpenGL. GLUT makes it considerably easier to learn +about and explore OpenGL programming. GLUT provides a portable API so +you can write a single OpenGL program that works on both Win32 PCs and +X11 workstations. + + +III. Joystick Support +===================== + +GLUT only has win32 joystick support but even at that, it is not well +implimented. So we use Steve Backer's joystick library when possible, +and fall back to GLUT for win32 until Steve's library adds win32 +support. + +To make sure joystick support is included when building under Linux: + + - make sure you have the proper joystick module installed. + - make sure the proper devices are created in /dev. + - /usr/include/linux/joystick.h must exist on your system. + + +IV. Procedure to build FGFS with Native SGI Irix Compilers from CVS Sources +=========================================================================== + +(Contributed by Todd Smith with modifications +and updates by Curt Olson) + +Download the latest version of plib (1.0.18) from: + + http://www.woodsoup.org/~sbaker/plib/ + +Configure it with the default prefix of /usr/local which places +everthing in a tree rooted at /usr/local/plib: + + sh$ CC="cc -Xcpluscomm" CXX=CC ./configure + +*Before* running make, fix up the plib Makefiles using the script +provided with the Flight Gear distribution: + + find . -name Makefile -exec .../src/FlightGear-0.7.x/irix-hack.pl {} \; + +This applies a fix in all the Makefiles to the lib creation command +(to use CC -ar rather than ar) as per a tip in the SGI pipeline +periodical. + +Now, make and install plib. + +Download the latest fgfs source snapshot from: + + ftp://ftp.flightgear.org/pub/fgfs/Source/Snapshots/ + +Configure and build fgfs as you did plib: + + sh$ CC="cc -Xcpluscomm" CXX=CC ./configure + sh$ find . -name Makefile -exec .../src/FlightGear-0.7.x/irix-hack.pl {} \; + + +V. Additional Notes for Building from CVS Sources +================================================== + +(Contributed by Todd Smith ) +and updates by Curt Olson) + +Download the FlightGear-0.7.x via anonymous cvs as usual, then do: + +> aclocal # normal +> automake -a -i # added '-i' flag to avoid dependency calc + # that only sgi cc/CC doesn't support +> autoconf # normal + +Note the change in automake's command argument. + +Now set env variables to use native compilers (csh syntax). + +> setenv CC cc +> setenv CXX CC +> setenv CFLAGS '-Xcpluscomm -DEBUG:suppress=1001,1012,1014, + 1116,1172,1174,1401,1460,1551,1552' +> setenv CXXFLAGS '-DEBUG:suppress=1001,1012,1014,1116,1172, + 1174,1401,1460,1551,1552,3303,3322' + +The '-DEBUG:suppress=' stuff just suppresses anonying warnings during +compile. The meaning of each one is shown later in this file. +You can use all or none of these here. + +> setenv CPPFLAGS '-woff 1014' + +This is required so that configure will really believe that plib +is installed. ( Otherwise a compiler warning makes configure +that plib/pu.h couldn't be found. ) + +> ./configure +> find . -name Makefile -exec irix-hack.pl {} \; # normal irix hack +> gmake + +Runs great. + +Todd +msmith@sikorsky.com + +------------------------------------------- +Warnings that I get. Ignore at your lesiure. + +C and C++: +warning(1001): last line of file ends without a newline +warning(1012): parsing restarts here after previous syntax error +warning(1014): extra text after expected end of preprocessing directive (breaks configure) +warning(1116): non-void function "poly_index_init" should return a value +warning(1172): subscript out of range +warning(1174): variable "j" was declared but never referenced +warning(1401): qualified name is not allowed in member declaration +warning(1460): function "..." redeclared "inline" after being called +warning(1551): variable "Altitude" is used before its value is set +warning(1552): variable "last" was set but never used + +C++ only: +warning(3303): type qualifier on return type is meaningless +warning(3322): omission of explicit type is nonstandard ("int" assumed) + + +VI. Additional Native SGI Irix Compilers Notes +============================================== + +Fixing all the Makefiles' with irix-hack.pl is *VERY* important for +your success): + + find . -name Makefile -exec irix-hack.pl {} \; + +This touches up the Makefiles to build libfoo.a with + + CC -ar -o libfoo.a file1.o file2.o ... + +The traditional method is to run: + + ar cru libfoo.a file1.o file2.o + +I wonder if this means that the native SGI "ar" is somewhat broke? + +Note, you should make sure you have perl installed on your system. The +"irix-hack.pl" script assumes that perl is located in /usr/bin/perl so +if this isn't the proper location on your system, change it in the first +line of "irix-hack.pl" before running the above command. One way to see +if perl is on your system (and determine where) is to run: + + which perl + +Perl can be installed from "eoe.sw.gifts_perl" or can be fetched and +built from the net. + +Finally you should run Gnu make. The native Irix make utility just +can't handle the makefiles generated by the automake program. Thus +you will need to use Gnu make. It's called "gmake" on my system so I +just run: + + gmake + +Don't worry about the make failing in the Tools directory. That's all +under construction stuff right now (10/7/99) and if you get that far, +rejoice because it means the simulator was successfully built in the +Simulator/Main subdirectory. + +Special note for those Irix users using the native compilers *AND* checking +out the current source tree via CVS: + +You will need to run "aclocal ; automake -a ; autoconf" as per +README.autoconf, but you need an additional flag for automake to disable +automatic dependency building (which breaks the native Irix compilers.) +You should instead run: + + aclocal ; automake -a --include-deps; autoconf + +Then, proceed on to the configure step. + +Questions? I realize this section is a big heap of random information so +if something isn't quite working for you, please ask. diff --git a/docs-mini/README.Win32 b/docs-mini/README.Win32 new file mode 100644 index 000000000..dbdb2e069 --- /dev/null +++ b/docs-mini/README.Win32 @@ -0,0 +1,171 @@ +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 diff --git a/docs-mini/README.Win32-X b/docs-mini/README.Win32-X new file mode 100644 index 000000000..18ba4578f --- /dev/null +++ b/docs-mini/README.Win32-X @@ -0,0 +1,85 @@ +http://www.cygnus.com/ml/gnu-win32/1998-Nov/0177.html + +Building cross cygwin b20 tools [Re: Linux->Win32 cross +compiler ?] + +Mumit Khan (khan@xraylith.wisc.edu) +Wed, 4 Nov 1998 09:38:23 -0600 (CST) + + Messages sorted by: [ date ][ thread ][ subject ][ author ] + Next message: Austin David France: "RE: B20 & bash 2.02.1(2) broken" + Previous message: Neil Schemenauer: "Bash exits after background command exits (B20)" + In reply to: Felix E. Klee: "Linux->Win32 cross compiler ?" + Next in thread: Peter Dalgaard BSA: "Re: Linux->Win32 cross compiler ?" + +On Mon, 2 Nov 1998, Felix E. Klee wrote: + +> Hi, +> +> does anyone know if a cross compiler exists for Linux which +> creates Win32 executables just like gnuwin32 does? +> + +============ building CROSS + +You can always build one yourself. Download the CDK source, and do the +following: + + $ mkdir /cygwin-b20 + $ cd /cygwin-b20 + $ tar zxvf /tmp/dev-src.tar.gz + $ cd src + $ mkdir CROSS + $ cd CROSS + $ ../configure --prefix=/usr/local/cygb20 --target=i386-cygwin32 -v + $ make > make.log 2>&1 + [ check for errors . If OK ] + $ make install > install.log 2>&1 + +After you're done, add it to path (if you're using a bourne-shell +compatible, otherwise use csh syntax). + + $ export PATH=$PATH:/usr/local/cygb20/bin + $ i386-cygwin32-gcc -v + [ should report egcs-1.1 etc ] + +All the binaries for i386-cygwin32 target are prefixed with i386-cygwin32- +prefix. + +============ building NATIVE tools using CROSS tools just built. + +Now if you want to build native tools on eg., a i686-pc-linux-gnu box with +the same pathnames that wCygnus uses: + + $ cd /cygwin-b20/src + $ mkdir NATIVE + $ cd NATIVE + $ ../configure --prefix=/Cygnus/cygwin-b20 \ + --exec-prefix=/Cygnus/cygwin-b20/H-i586-cygwin32 \ + --target=i386-cygwin32 --host=i386-cygwin32 \ + --build=i686-pc-linux-gnu -v + $ make > make.log 2>&1 + [ check for errors . If OK ] + +Now of course, you want to install it to a *DIFFERENT* location than +/Cygnus/cygwin-b20 on your Unix host before creating an archive to +copy to a Cygwin box. Let's say you first install it to /tmp/cygwin. + + $ make prefix=/tmp/cygwin exec_prefix=/tmp/cygwin/H-i586-cygwin32 \ + install > install.log 2>&1 + $ cd /tmp/cygwin + $ tar zcvf /tmp/dev-cygwin-b20.tar.gz . + +Copy /tmp/dev-cygwin-b20.tar.gz to your Cygwin box and unpack: + + [win32]$ cd /Cygnus/cygwin-b20 + [win32]$ tar zxvf /tmp/dev-cygwin-b20.tar.gz + +Regards, +Mumit + + +- +For help on using this list (especially unsubscribing), send a message to +"gnu-win32-request@cygnus.com" with one line of text: "help". + diff --git a/docs-mini/README.anoncvs b/docs-mini/README.anoncvs new file mode 100644 index 000000000..81705b833 --- /dev/null +++ b/docs-mini/README.anoncvs @@ -0,0 +1,10 @@ +Flight Gear now has an anonymous CVS repository. Currently, it is read +only, but it will allow you to maintain your own absolutely up to date +source tree. You will also be able to do diffs, extract older versions +of files, and all the other fancy CVS stuff. + +Instructions for accessing the FG cvs repository can be found by +following the "CVS Resources" link from the main FG web page: + + http://www.menet.umn.edu/~curt/fgfs/ + diff --git a/docs-mini/README.autoconf b/docs-mini/README.autoconf new file mode 100644 index 000000000..6f30c5410 --- /dev/null +++ b/docs-mini/README.autoconf @@ -0,0 +1,43 @@ +Flight Gear uses the Gnu autoconf and automake tools for managing +Makefiles. It also uses libtool to manage building shared and static +libraries. Key input files for this system are: + + configure.in - Top level directory + Makefile.am - One in each subdirectory + Include/config.in - input file for building config.h + +If you need to modify any of these files, you will need to build and +install the following packages: + + - GNU autoconf 2.12 (available from ftp://prep.ai.mit.edu/pub/gnu) + - GNU automake 1.2h (available from ftp://ftp.cygnus.com/pub/tromey) + +Libtool is not currently used: + + - GNU libtool 1.2 (available from ftp://prep.ai.mit.edu/pub/gnu) + (or maybe ftp://alpha.gnu.org/gnu) + - After upgrading libtool, if we were using it, you would want to run: + + libtoolize --force + +When making a change to any of these files you will need to run: + + aclocal ; automake -a ; autoconf + +Then follow the regular build procedure: + + ./configure; make; make install + +For debuging purposes you might want to try something like: + + CFLAGS=-Wall CXXFLAGS=-Wall ./configure; make; make install + +For full optimization using the EGCS compiler on an Intel processor you +could try something like: + + MACH="-mpentium" # -m486 -mpentiumpro etc. + export CC=egcc # for Linux + export CFLAGS="-Wall -O5 -fomit-frame-pointer -ffast-math -funroll-loops $MACH" + export CXXFLAGS="-Wall -O5 -fomit-frame-pointer -ffast-math -funroll-loops $MACH" + ./configure + diff --git a/docs-mini/README.plib b/docs-mini/README.plib new file mode 100644 index 000000000..b9116697a --- /dev/null +++ b/docs-mini/README.plib @@ -0,0 +1,15 @@ +You *must* have the plib version 1.1.x or later installed on your +system to build the FGFS simulator!" Special note: Flight Gear is no +longer compatible with the 1.0.x versions of plib. + +You can get the latest version of plib from: + + http://www.woodsoup.org/projs/plib/ + +Build notes: + +You should be able to just run "./configure" to configure the package +and use all of plib's defaults. Then run "make" followed by "make +install". By default, plib installs itself into /usr so if you don't +like this, be sure to specify an alternate prefix such as --prefix=/usr/local + diff --git a/docs-mini/README.running b/docs-mini/README.running new file mode 100644 index 000000000..f423952cf --- /dev/null +++ b/docs-mini/README.running @@ -0,0 +1,178 @@ +Starting the executable +======================= + +Unix: runfgfs +Windows: runfgfs.bat + +"runfgfs" is a script which runs the Flight Gear executable with +(hopefully) the correct $FG_ROOT directory specified. + + +First Flight +============ + +By default, the plane should be looking more or less straight down a +runway, and the mouse cursor should be a regular pointer. The +following steps will help you to get into the air: + +- click the right mouse button once, so that a cross cursor + appears (now, the mouse will act as a control yoke) + +- while holding down the left mouse button, push the mouse cursor up + until the engine is at full power (the throttle indicator is on the + left side of the HUD), then release the left mouse button + +- when the plane is moving fast enough (say, 100 knots for the default + Navion), slowly pull the mouse cursor down (with no buttons pressed) + to raise the elevators until the plane rolls off the runway and into + the air + +- while holding down the left mouse button, move the mouse cursor down + slightly to ease up on the throttle, then release the left mouse + button + +- move the mouse up, down, and sideways as necessary to establish + level flight -- small movements are best, or you may lose control of + the plane + +- click the right mouse button once more, so that a double-arrow + cursor appears (now, the mouse will allow you to look around) + +- move the mouse around to look out of the plane at different angles + +- press the left mouse button once to return the view to front and + centre + +- click the right mouse button *twice*, so that the cross cursor + appears again (you're in yoke mode) + +- now that you know how to operate the throttle, ailerons, and + elevators (as well as how to look around), try to circle around and + land back on the runway (best of luck) + + +Mouse controls +============== + +It is possible to manipulate the basic flight controls and the view +using only the mouse. Clicking the right mouse button toggles the +mouse among three different modes: + +1. Pointer mode (the default: mouse cursor is a pointer) +2. Yoke mode (mouse cursor is a cross) +3. Look-around mode (mouse pointer is a double arrow) + +In yoke mode and look-around mode, the mouse cursor will remain +trapped in the Flight Gear window. + + +Yoke mode +--------- + +In yoke mode (mouse cursor as cross), mouse movement adjusts the main +flight controls, depending on which buttons you press. + +With no button pressed: +(like a control yoke on an airplane) +- horizontal movement controls the ailerons +- vertical movement controls the elevators + +With left button pressed: +- horizontal movement controls the brakes +- vertical movement controls the throttle + +With middle button pressed: +- horizontal movement controls the rudder +- vertical movement controls the trim + + +Look-around mode +---------------- + +In look-around mode (mouse cursor as double arrow), mouse movement +changes the viewing direction: horizontal movement scrolls the view +horizontally, and vertical movement scrolls the view vertically in the +direction of mouse movement. + +To return the view to front and center, click the left mouse button +once. + + +Keyboard controls +================= + +It is also possible to fly using the numeric keypad. There is some +unresolved wierdness with the GLUT libraries and keyboard input, so +for now, the state of the "Num Lock" key is important. + +Num Lock Active +--------------- + + Pg Up/Pg Dn Throttle + Left Arrow/Right Arrow Aileron + Up Arrow/Down Arrow Elevator + Ins/Enter Rudder + "5" Center aileron/elevator/rudder + Home/End Elevator Trim + +Num Lock Inactive +----------------- + Shift + Change view + + where key is one of: + + 8 = forward + 7 = left/forward + 4 = left + 1 = left/back + 2 = back + 3 = right/back + 6 = right + 9 = right/forward + +Brakes +------ + Press the "b" key to toggle + +Autopilot +--------- + Control + A Toggle autopilot altitude lock. + Control + H Toggle autopilot heading lock. + Control + S Toggle autopilot autothrottle. + Control + T Toggle autopilot terrain follow. + +Simulation +---------- + + ESC Quit Flight Gear. + + a Increase speedup. + b Toggle brakes. + h Dim HUD. + i Revert to full HUD. + m Increase time warp. + p Toggle pause. + t Increase time warp delta. + v Toggle external view mode. + x Zoom out (narrow field of view). + z Increase visibility. + + Shift + A Decrease speedup. + Shift + H Brighten HUD + Shift + I Minimize HUD + Shift + M Decrease time warp. + Shift + P Toggle 2D panel display. + Shift + T Decrease time warp delta. + Shift + W Toggle fullscreen/window mode. + Shift + X Zoom out (widen field of view). + Shift + Z Decrease visibility. + +Other +----- + F2 = Reload tile cache. + F6 = Toggle autopilot target location. + F8 = Toggle fog modes (off, fastest, nicest) + F9 = Toggle textures on/off + F10 = Toggle menu + F11 = Set autopilot altitude + F12 = Set autopilot heading diff --git a/docs-mini/README.running.new b/docs-mini/README.running.new new file mode 100644 index 000000000..f423952cf --- /dev/null +++ b/docs-mini/README.running.new @@ -0,0 +1,178 @@ +Starting the executable +======================= + +Unix: runfgfs +Windows: runfgfs.bat + +"runfgfs" is a script which runs the Flight Gear executable with +(hopefully) the correct $FG_ROOT directory specified. + + +First Flight +============ + +By default, the plane should be looking more or less straight down a +runway, and the mouse cursor should be a regular pointer. The +following steps will help you to get into the air: + +- click the right mouse button once, so that a cross cursor + appears (now, the mouse will act as a control yoke) + +- while holding down the left mouse button, push the mouse cursor up + until the engine is at full power (the throttle indicator is on the + left side of the HUD), then release the left mouse button + +- when the plane is moving fast enough (say, 100 knots for the default + Navion), slowly pull the mouse cursor down (with no buttons pressed) + to raise the elevators until the plane rolls off the runway and into + the air + +- while holding down the left mouse button, move the mouse cursor down + slightly to ease up on the throttle, then release the left mouse + button + +- move the mouse up, down, and sideways as necessary to establish + level flight -- small movements are best, or you may lose control of + the plane + +- click the right mouse button once more, so that a double-arrow + cursor appears (now, the mouse will allow you to look around) + +- move the mouse around to look out of the plane at different angles + +- press the left mouse button once to return the view to front and + centre + +- click the right mouse button *twice*, so that the cross cursor + appears again (you're in yoke mode) + +- now that you know how to operate the throttle, ailerons, and + elevators (as well as how to look around), try to circle around and + land back on the runway (best of luck) + + +Mouse controls +============== + +It is possible to manipulate the basic flight controls and the view +using only the mouse. Clicking the right mouse button toggles the +mouse among three different modes: + +1. Pointer mode (the default: mouse cursor is a pointer) +2. Yoke mode (mouse cursor is a cross) +3. Look-around mode (mouse pointer is a double arrow) + +In yoke mode and look-around mode, the mouse cursor will remain +trapped in the Flight Gear window. + + +Yoke mode +--------- + +In yoke mode (mouse cursor as cross), mouse movement adjusts the main +flight controls, depending on which buttons you press. + +With no button pressed: +(like a control yoke on an airplane) +- horizontal movement controls the ailerons +- vertical movement controls the elevators + +With left button pressed: +- horizontal movement controls the brakes +- vertical movement controls the throttle + +With middle button pressed: +- horizontal movement controls the rudder +- vertical movement controls the trim + + +Look-around mode +---------------- + +In look-around mode (mouse cursor as double arrow), mouse movement +changes the viewing direction: horizontal movement scrolls the view +horizontally, and vertical movement scrolls the view vertically in the +direction of mouse movement. + +To return the view to front and center, click the left mouse button +once. + + +Keyboard controls +================= + +It is also possible to fly using the numeric keypad. There is some +unresolved wierdness with the GLUT libraries and keyboard input, so +for now, the state of the "Num Lock" key is important. + +Num Lock Active +--------------- + + Pg Up/Pg Dn Throttle + Left Arrow/Right Arrow Aileron + Up Arrow/Down Arrow Elevator + Ins/Enter Rudder + "5" Center aileron/elevator/rudder + Home/End Elevator Trim + +Num Lock Inactive +----------------- + Shift + Change view + + where key is one of: + + 8 = forward + 7 = left/forward + 4 = left + 1 = left/back + 2 = back + 3 = right/back + 6 = right + 9 = right/forward + +Brakes +------ + Press the "b" key to toggle + +Autopilot +--------- + Control + A Toggle autopilot altitude lock. + Control + H Toggle autopilot heading lock. + Control + S Toggle autopilot autothrottle. + Control + T Toggle autopilot terrain follow. + +Simulation +---------- + + ESC Quit Flight Gear. + + a Increase speedup. + b Toggle brakes. + h Dim HUD. + i Revert to full HUD. + m Increase time warp. + p Toggle pause. + t Increase time warp delta. + v Toggle external view mode. + x Zoom out (narrow field of view). + z Increase visibility. + + Shift + A Decrease speedup. + Shift + H Brighten HUD + Shift + I Minimize HUD + Shift + M Decrease time warp. + Shift + P Toggle 2D panel display. + Shift + T Decrease time warp delta. + Shift + W Toggle fullscreen/window mode. + Shift + X Zoom out (widen field of view). + Shift + Z Decrease visibility. + +Other +----- + F2 = Reload tile cache. + F6 = Toggle autopilot target location. + F8 = Toggle fog modes (off, fastest, nicest) + F9 = Toggle textures on/off + F10 = Toggle menu + F11 = Set autopilot altitude + F12 = Set autopilot heading diff --git a/docs-mini/README.src b/docs-mini/README.src new file mode 100644 index 000000000..d0cb11459 --- /dev/null +++ b/docs-mini/README.src @@ -0,0 +1,58 @@ +majordomo writes: +Subdirectories +============== +Main/ +------- +"main()" and GLUT dependent mouse/keyboard/graphics code. + + +Aircraft/ +--------- +Structure and code to tie together all the pieces of an aircraft such +as flight model, engine model, panel, controls, etc. + + +Controls/ +--------- +Provide a standardized interface to all aircraft controls. + + +FDM/ +------- +Strucures and code to implement various flight models. Provides a +standardized interface to all interesting flight model variabls. + + +Math/ +----- +Contains miscellaneous matrix/vector routines. + + +Scenery/ +-------- +Scenery parsing/generating code. + + +Sound/ +------ +Sound management code + + +Timer/ +------ +Code to handle time and timing of events. + + +Utils/ +------ +Miscellaneous utility routines such as a general random number generator + + +Weather/ +-------- +Weather management and modeling code. + + +Win32/ +------ +Win32 support stuff