]> git.mxchange.org Git - flightgear.git/blobdiff - docs-mini/README.IRIX
Changes from Tony Peden to fix reinit crashes (and eliminate the force
[flightgear.git] / docs-mini / README.IRIX
index 9b52a4930baa2d1c3b06cd86df7261a213132049..f120f3e37c2b5f4497662bf630f2143eff6f1740 100644 (file)
-V. Procedure to build FGFS with Native SGI Irix Compilers from CVS Sources
-==========================================================================
 
-(Contributed by Todd Smith <msmith@sikorsky.com> with modifications
-and updates by Curt Olson)
+This file is made possible by contributions from:
+        Todd Smith  <msmith@sikorsky.com>
+        Curt Olson  <curt@flightgear.org>
+        Erik Hofman <erik@ehofman.com>
 
-Download the latest version of plib (1.0.18) from:
 
-    http://www.woodsoup.org/~sbaker/plib/
+1. Requirements
 
-Configure it with the default prefix of /usr/local which places
-everthing in a tree rooted at /usr/local/plib:
+The following packages should be installed before FlightGear (or SimGear
+or PLib) can be compiled on Irix:
 
-    sh$ CC="cc -Xcpluscomm" CXX=CC ./configure
+            Irix development headers and libraries
+            (from the Irix 6.5 development CD's)
+            --------------------------------------
 
-*Before* running make, fix up the plib Makefiles using the script
-provided with the FlightGear distribution:
+        compiler_dev.sw.base           irix_dev.sw.headers
+        compiler_dev.sw.ld             dev.sw.lib
+        compiler_dev.sw.util
+        compiler_dev.hdr.lib           
 
-    find . -name Makefile -exec .../src/FlightGear-0.7.x/irix-hack.pl {} \;
+        gl_dev.sw.gldev                        dmedia_dev.sw.base
+        x_dev.sw.dev
 
-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.
+            MipsPro C and C++ Compiler environment
+            --------------------------------------
 
-Now, make and install plib.
+        c++_dev.hdr.lib                        c_dev.sw.c
+        c++_dev.sw.c++                 c_fe.sw.c
+        c++_dev.sw.lib
+        c++_eoe.sw.lib
+        c++_fe.sw.c++
 
-Download the latest fgfs source snapshot from:
 
-    ftp://ftp.flightgear.org/pub/fgfs/Source/Snapshots/
+            FlightGear Flight Simulator Software
+            ----------------------------------------
 
-Configure and build fgfs as you did plib:
+        FlightGear:    http://www.flightgear.org
+        SimGear:       http://www.simgear.org
+        Plib:          http://plib.sourceforge.net
+        GLUT:          http://
+        ZLIB:          http://
+        MetaKit:       http://www.a1.nl/~ehofman/fgfs/downloads/metakit-2.0.1-FGFS.tar.gz
 
-    sh$ CC="cc -Xcpluscomm" CXX=CC ./configure
-    sh$ find . -name Makefile -exec .../src/FlightGear-0.7.x/irix-hack.pl {} \;
 
 
-VI. Additional Notes for Building on IRIX from CVS Sources
-==========================================================
+2. Compiling and Installation
 
-(Contributed by Todd Smith <msmith@sikorsky.com>)
-and updates by Curt Olson)
+To create a set of binaries it is important to follow these steps. This
+will build a statically linked executable /opt/bin/fgfs
 
-Download the FlightGear-0.7.x via anonymous cvs as usual, then do:
+   1. Install GLUT, Zlib and MetaKit.
 
-> aclocal              # normal
-> automake -a -i       # added '-i' flag to avoid dependency calc
-                       # that only sgi cc/CC doesn't support
-> autoconf             # normal
+   2. Extract, configure and install Plib:
+        automake -a -i
+        CXXFLAGS="-O2 -I/opt/include" LDFLAGS="-L/opt/lib32"
+        ./configure --prefix=/opt --libdir=/opt/lib32
+        make install
 
-Note the change in automake's command argument.
+   3. Extract, configure and install SimGear:
+        CXXFLAGS="-O2" LDFLAGS="-L/opt/lib32"
+        ./configure --prefix=/opt --libdir=/opt/lib32 --without-logging
+        make install
 
-Now set env variables to use native compilers (csh syntax).
+   4. Extract, configure and install FlightGear:
+        CXXFLAGS="-O2" CFLAGS="-O2 -Xcpluscomm" LDFLAGS="-L/opt/lib32"
+        ./configure --prefix=/opt --with-simgear=/opt --without-loging
+        make install
 
-> 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.
+The irix-hack.sh script fixes some compiler specific problems which were 
+introduced after the adoption of the C++ Standard Template Library.
 
-> setenv CPPFLAGS '-woff 1014'
+The "automake -a -i" command is required because automake with automatic
+dependency building breaks the native Irix compilers.
 
-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
+3. Running
 
-Runs great.
+Before the FlightGear program could be run it is important to install the
+FlightGear base package (the default is to extract the base package into
+/opt/lib32).
 
-Todd
-msmith@sikorsky.com
+This package can be found at: http://www.flightgear.org
 
--------------------------------------------
-Warnings that I get. Ignore at your lesiure.
+When all is set and done, just run /opt/bin/runfgfs
+To see the command line options, type "man -M /opt/man fgfs"
 
-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)
-
-
-VII. 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.