
PRIMA is a general purpose extensible graphical user interface 
toolkit with a rich set of standard widgets and an emphasis on 
2D image processing tasks. A Perl program using PRIMA looks 
and behaves identically on X, Win32 and OS/2 PM. 

INSTALLATION
============

Create a makefile by running Makefile.PL using perl
and then run make ( nmake for Win32 and OS/2, or gmake 
for sgi):

    perl Makefile.PL
    make
    make test
    make install

If 'perl Makefile.PL' fails, compilation history along with errors 
can be found in makefile.log. 

If make fails with message

** No image codecs found

that means you don't have image libraries that Prima supports in your path.
Prima supports libungif, libjpeg, libpng and gbm - latter is compiled customly
and named libprigraph. For win32 users it is recommended to
download http://www.prima.eu.org/download/prigraph.lib and
http://www.prima.eu.org/download/prima_dlls.zip. prigraph.lib should be
put into LIBPATH, and prima_dll.zip is to be unpacked and primguts.dll
and zlib.dll to be put in the same directory to Prima.dll ( which appears 
after successful compilation in auto/Prima subdirectory ).

If some of the required libraries or include files can not
be found, INCPATH+=/some/include and LIBPATH+=/some/lib semantics
should be used to tell Makefile.PL about these.

To install into a private library, for example your home
directory:

    perl Makefile.PL PREFIX=$HOME/lib/perl

If compilation process fails because Makefile contains
invalid switches for your compile or linker, try change
these with arguments to Makefile.PL. Most useful of these
are:
   COMPILER - type of compiler ( gcc, emx, mscv32, bcc32, irixcc)
   CC - compiler command
   CFLAGS - compiler arguments
   LD - linked command
   LDFLAGS - linker arguments

Look in Makefile.PL for details.
  

BINARY DISTRIBUTION INSTALLATION
================================

Copy all files to the perl distribution with the hierarchy 
structure preserved. You have to patch Prima::Config.pm 
manually if you need to compile prima-dependent modules.


EXAMPLES
========

Look at the code located in examples subdirectory.
Typical code starts with

   use Prima qw(Application);

and ends with
   
   run Prima;

which is an event loop call. Try to begin from the followind code:

   use Prima qw(Application Buttons);

   Prima::Window-> create(
      text     => 'Hello world!',
      size     => [ 200, 200],
   )-> insert( Button =>
      centered => 1,
      text     => 'Hello world!',
      onClick  => sub { $::application-> close },
   );

   run Prima;

Or, alternatively, start the VB program, which is
a semi-demonstration visual builder. All examples and
programs included into the distribution can be run
either by their name or with perl as argument - for 
example, ..../generic or perl ..../generic . 
( perl ..../generic.bat for win32 )


COPYRIGHT
=========

(c) 1997-2001 The Protein Laboratory, University of Copenhagen

AUTHORS
=======

Dmitry Karasik <dmitry@karasik.eu.org>
Anton Berezin  <tobez@tobez.org>
Vadim Belman   <voland@lflat.org>

CREDITS
=======

David Scott <DScott@dgt.com>

