1
0
Fork 0

Added Olivers FAQ.

Update README.Unix with additional Irix information.
configure script addes search paths before looking for plib.  Tweaked
  checks for win32 opengl/glut/glu libs.
This commit is contained in:
curt 1999-04-22 18:45:16 +00:00
parent 2def72783a
commit 1f3049e883
4 changed files with 123 additions and 58 deletions

View file

@ -1,6 +1,6 @@
SUBDIRS = Include Lib Simulator Tools Tests
EXTRA_DIST = README.Unix README.Linux README.MacOS README.Win32 \
EXTRA_DIST = FG-FAQ.v3 README.Unix README.Linux README.MacOS README.Win32 \
README.autoconf README.gfc README.gpc README.plib README.running \
Thanks VERSION acsite.m4 acconfig.h irix-hack.pl

View file

@ -1,12 +1,10 @@
*** not much here yet ***
If you are reading this in hopes that you will find the answer to a
specific question, please send the question to curt@me.umn.edu and
specific question, please send the question to curt@flightgear.org and
suggest that I include the answer here.
Compilers and Portability
=========================
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
@ -22,8 +20,8 @@ platforms, but I must depend on others to make sure their favorite
platform and compiler is well supported.
GLUT
====
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.
@ -40,8 +38,8 @@ you can write a single OpenGL program that works on both Win32 PCs and
X11 workstations.
Joystick Support
================
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,
@ -55,13 +53,82 @@ To make sure joystick support is included when building under Linux:
- /usr/include/linux/joystick.h must exist on your system.
Native SGI Irix Compilers
=========================
IV. Procedure to build FGFS with Native SGI Irix Compilers from CVS Sources
===========================================================================
(Contributed by Todd Smith <msmith@sikorsky.com>)
Download the latest version of plib (1.0.3) from:
http://www.woodsoup.org/~sbaker/plib/
Install it both in /usr/local/plib and /usr/local/include/plib. I
think that I am using it from /usr/local/include.
Download the FlightGear-0.6 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)
V. Additional Native SGI Irix Compilers Notes
=============================================
If you are building with native SGI compilers try running configure like the
following (assuming sh syntax):
CC=cc CXX=CC CFLAGS=-Xcpluscomm ./configure
CC=cc CXX=CC CFLAGS="-Xcpluscomm -woff 1014" ./configure
Then (and this step is *VERY* important for your success) run the following
command:
@ -100,3 +167,18 @@ Don't worry about the make failing in the Tools directory. That's all
under construction stuff right now (3/9/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.

4
Thanks
View file

@ -120,6 +120,10 @@ Bruce Jackson of NASA <e.b.jackson@larc.nasa.gov>
flight model. Bruce has patiently answered my many, many questions.
Oliver L. K. <delise@rp-plus.de>
FAQ Maintainer.
Tom Knienieder <knienieder@ms.netwing.at>
Ported Steve's Audio library to Win32

View file

@ -63,6 +63,23 @@ dnl Let the Win32 user specify if they want to build with the SGI
dnl opengl.dll as opposed to the more standard openg32.dll
AC_ARG_WITH(sgi-opengl, [ --with-sgi-opengl Build against SGI's opengl.dll glu.dll and glut.dll])
dnl Check for MS Windows environment
AC_CHECK_HEADER(windows.h)
dnl extra library and include directories
EXTRA_DIRS="/usr/local /usr/X11R6"
if test -d /opt/X11R6 ; then
EXTRA_DIRS="$EXTRA_DIRS /opt/X11R6"
fi
if test "x$ac_cv_header_windows_h" = "xyes" ; then
EXTRA_DIRS="${EXTRA_DIRS} `pwd`/Win32"
# elif test `uname -s` = "SunOS" ; then
# EXTRA_DIRS="${EXTRA_DIRS} `pwd`/SunOS"
fi
wi_EXTRA_DIRS(no, ${EXTRA_DIRS})
dnl Check for "plib" without which we cannot go on
AC_CHECK_HEADER(plib/pu.h)
if test "x$ac_cv_header_plib_pu_h" != "xyes"; then
@ -76,9 +93,6 @@ if test "x$ac_cv_header_plib_pu_h" != "xyes"; then
exit
fi
dnl Check for MS Windows environment
AC_CHECK_HEADER(windows.h)
dnl Using AM_CONDITIONAL is a step out of the protected little
dnl automake fold so it is potentially dangerous. But, we are
dnl beginning to run into cases where the standard checks are not
@ -111,20 +125,6 @@ AM_CONDITIONAL(ENABLE_LINUX_JOYSTICK, test -r /usr/include/linux/joystick.h )
dnl Enable serial support on Unix type systems
AM_CONDITIONAL(ENABLE_UNIX_SERIAL, true)
dnl extra library and include directories
EXTRA_DIRS="/usr/local /usr/X11R6"
if test -d /opt/X11R6 ; then
EXTRA_DIRS="$EXTRA_DIRS /opt/X11R6"
fi
if test "x$ac_cv_header_windows_h" = "xyes" ; then
EXTRA_DIRS="${EXTRA_DIRS} `pwd`/Win32"
# elif test `uname -s` = "SunOS" ; then
# EXTRA_DIRS="${EXTRA_DIRS} `pwd`/SunOS"
fi
wi_EXTRA_DIRS(no, ${EXTRA_DIRS})
dnl Check for X11 (fancy)
AC_PATH_XTRA
@ -148,7 +148,7 @@ AC_CHECK_LIB(Xmu, XmuLookupStandardColormap)
dnl check for OpenGL related libraries
if test "x$ac_cv_header_windows_h" != "xyes" ; then
dnl Reasonable stuff non-windoze variants ... :-)
dnl Reasonable stuff for non-windoze variants ... :-)
AC_CHECK_LIB(GLcore, glNewList)
if test "x$ac_cv_lib_GLcore_glNewList" = "xno" ; then
@ -197,6 +197,10 @@ else
dnl force a failed check since we will be building under windoze
AM_CONDITIONAL(ENABLE_XMESA_FX, test "no" = "yes")
dnl just define these to true and hope for the best
ac_cv_lib_glut_glutGetModifiers="yes"
ac_cv_lib_glut_glutGameModeString="yes"
if test "x$with_sgi_opengl" = "xyes" ; then
echo "Building with glut.dll, glu.dll, and opengl.dll"
WIN32_GLUT=glut
@ -209,34 +213,9 @@ else
WIN32_OPENGL=opengl32
fi
if test -f `pwd`/Win32/${WIN32_GLUT}.dll; then
echo " found ${WIN32_GLUT}.dll, adding -l${WIN32_GLUT}"
LIBS="$LIBS -l${WIN32_GLUT}"
else
echo " Cannot find ${WIN32_GLUT}.dll"
exit 1
fi
if test -f `pwd`/Win32/${WIN32_GLU}.dll; then
echo " found ${WIN32_GLU}.dll"
else
echo " Can't find ${WIN32_GLU}.dll, assuming it's someplace"
fi
echo " adding -l${WIN32_GLU}"
LIBS="$LIBS -l${WIN32_GLU}"
if test -f `pwd`/Win32/${WIN32_OPENGL}.dll; then
echo " found ${WIN32_OPENGL}.dll"
else
echo " Can't find ${WIN32_OPENGL}.dll, assuming it's somplace"
fi
echo " adding -l${WIN32_OPENGL}"
LIBS="$LIBS -l${WIN32_OPENGL}"
echo " adding -luser32 -lgdi32"
LIBS="$LIBS -l${WIN32_GLUT} -l${WIN32_GLU} -l${WIN32_OPENGL}"
LIBS="$LIBS -luser32 -lgdi32"
ac_cv_lib_glut_glutGetModifiers="yes"
ac_cv_lib_glut_glutGameModeString="yes"
echo "Will link apps with $LIBS"
fi
if test "x$ac_cv_lib_glut_glutGetModifiers" = "xno"; then