]> git.mxchange.org Git - flightgear.git/blobdiff - README.Linux
Ssg tweaks.
[flightgear.git] / README.Linux
index e75489ee94e3fa15616e556a77620d3b99ad0007..da6f0576dc51ec4dff57392da86206abc37ab5a6 100644 (file)
-Aug 27, 1998
-============
+I.  GENERAL LINUX INSTRUCTIONS
+==============================
 
-This is a short description of the things I had to do to get
+This is a short description of the things that need to be done to get
 FlightGear up and running under Linux.
 
 1. Prerequisites:
 
-Linux (of any Flavour), a 3DFX-card (Voodoo1 in my case). 3D
-operations without hardware support can force even the fastest PII to
-its knees.... To make use of the accelerator board you need
+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.
+  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 2.6 (or greater) installed.
+- the MESA library version 3.0 (or greater) installed.
 
-Grab it at"
+  Grab it at:
 
-       ftp://iris.ssec.wisc.edu/pub/Mesa
+                       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 :-)
+  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:
+  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.
+  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 and gfc libraries.
+
+  Read the README.g[fp]c 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 
-       az-patch-x.xx.tar.gz
-       base-x.xx.tar.gz 
-       textures-x.xx.tar.gz
+       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/
 
-to get started. Sound is optional.
+the file is called 
 
-       sounds-x.xx.tar.gz
+       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 :
 
@@ -75,32 +130,18 @@ 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 "fg", so simply typing "fg" at the prompt
-will give you
-
-       fg: No such job
-
-since fg is a shell internal. Use the "runfg" script instead! Later
-versions of FlightGear will be named "fgfs", so watch out!
+of the FlightGear binary is "fgfs".
 
 Another problem with Linux/Glide is permission-related. All programs
-accessing the Accelerator board need root permissions. The solution is
-either to play as root or make the /usr/local/bin/fg binary "setuid
-root", i.e. when this binary is run root priviledges are given. Do
-this by issuing (as root)
+accessing the Accelerator board need root permissions (or the kernel
+module mentioned above installed). I _strongly_ recommend the latter.
 
-       chmod +s /usr/local/bin/fg
-
-A solution for this problem is upcoming, keep an eye on the 3Dfx
-website.
 
 3. Install the data files
 
 Change to /usr/local/lib/FlightGear and unpack the data files:
 
-       tar xvfz WHERE_YOUDOWNLOADED_THE_FILES/az-patch-x.xx.tar.gz 
-       tar xvfzWHERE_YOU DOWNLOADED_THE_FILES/base-x.xx.tar.gz 
-       tar xvfz WHERE_YOU DOWNLOADED_THE_FILES/textures-x.xx.tar.gz
+       tar xvfz WHERE_YOU DOWNLOADED_THE_FILES/fgfs-base-x.xx.tar.gz 
 
 That's it...
 
@@ -108,7 +149,7 @@ That's it...
 
 If everything went ok, simply type
 
-       runfg
+       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
@@ -129,6 +170,9 @@ 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
@@ -139,3 +183,51 @@ beer to me, if not flame me!
 Bernhard H. Buckel
 <buckel@wmad95.mathematik.uni-wuerzburg.de>
 
+
+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 <vries@per.nl> 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"
+<dfrasnel@csee.wvu.edu>
+
+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
+
+