Portability Libraries.
======================
by Steve Baker.
All the documentation and installation instructions
are now online at:
http://plib.sourceforge.net
They are also downloadable - along with example
programs and demos from the same site.
SUPPORT:
Please don't email me (Steve Baker) directly - I
get *WAY* too much mail as it is! Instead, please
sign up to the PLIB user's mailing list. Instructions
can be found here:
http://plib.sourceforge.net
LICENSING:
These libraries are offered as OpenSource freeware
under the provisions of the GNU Library Public
License (LGPL). Those terms and conditions are
detailed in the file 'LICENSE' in this directory.
REQUIREMENTS:
In addition to the libraries that I provide, you
will also need OpenGL (OpenGL 1.1 or later -
Mesa 3.0 or later) and GLUT (The OpenGL utilities
toolkit - version 3.7 or later) and a hardware 3D
graphics accellerator that supports OpenGL.
WHAT DO YOU GET?
The following libraries are provided:
JS -- A Joystick interface.
PUI -- A simple GUI built on top of OpenGL.
SG -- Some Standard Geometry functions (vector and
matrix math, spheres, boxes, frustra, etc)
SL -- A Games-oriented Sound Library.
FNT -- OpenGL texture-mapped font Library.
SSG -- A Simple Scene Graph API built on top of OpenGL.
DIRECTORY STRUCTURE:
PLIB expects to be installed in one standard place:
/usr/lib or C:\USR\LIB
...with header files at:
/usr/include/plib or C:\USR\INCLUDE\PLIB
PORTABILITY and DEPENDANCIES:
Although all these libraries are designed to be easily
portable (and more importantly so that programs using
them can be UTTERLY portable), some of them have not
yet been ported to all operating systems.
JS -- Currently Linux/Windows/BSD only.
SG -- Totally portable, no dependancies.
PUI -- Requires GLUT and OpenGL also FNT and SG.
FNT and SSG -- Require OpenGL and SG.
SL -- This has now been ported onto:
Linux
FreeBSD
OpenBSD
M$ Windows (NT,95,98 - so far)
MacOS
SGI IRIX
Sun Solaris
Any operating system that supports OSS (The
Open Sound System).
NOTE: SL has a subsidiary library 'SM' that
can be used to control the audio mixer - but
that is not portable beyond Linux. You might
get it to work under OSS-based sound systems
too. Don't use SM if you want to write portable
code.
No other requirements.
STABILITY AND RELIABILITY:
SG, SL, JS and PUI have all been in use for a long time
in a huge number of applications - so they are reliable
and unlikely to change much in the future.
FNT is pretty simple and should be very stable.
SSG is still fairly new though - and it's by far the
most complex and ambitious of the libraries. Whilst
it seems to work well and to be stable for the couple
of applications I have, it will certainly need more
work in the future.
COMPILING/LINKING WITH PLIB
In your source code, add any combination of:
#include <plib/js.h>
#include <plib/sg.h>
#include <plib/fnt.h>
#include <plib/pu.h>
#include <plib/ssg.h>
#include <plib/sl.h>
Add any of these to your link line:
-lplibssg -lplibsl -lplibpu -lplibfnt -lplibsg
Under UNIX/Linux, you'll also need:
-lglut -lGLU -lGL -L/usr/X11/lib -lX11 -lXext -lXmu -lm
Steve Baker.
<sjbaker1@airmail.net>
http://web2.airmail.net/sjbaker1
|