
Build Instructions -- Linux, Solaris, ...
-----------------------------------------

The Linux tree should build easily assuming that you have all the tools
properly installed.  You'll need gcc, make, and all the tools which usually
accompany them.

You'll also need GTK version 1.1.15 or later.

Building the tree is a pretty simple process.  We use a "diving make" system,
where virtually every directory in the tree hierarchy has its own Makefile,
which contains the instructions for how to build the contents of that directory.

There are several ways to build and run AbiWord:

[1] Developer Style:  just cd into the abi directory and type 'make'
    and then 'make install'.  This will install the AbiSuite support
    files and create abiword and AbiWord symlinks in /usr/bin or
    /usr/local/bin to the executable.  This is a short-cut to creating
    a normal package and installing it.

[2] End-User Style:  just cd into the abi directory and type
    'make distribution ABI_BUILD_VERSION=x.y.z ABI_DIST_TARGET=<fmt>'
    where <fmt> is one or more of 'tgz', 'rpm', 'deb', 'slp', 'pkg', 'depot'.
    This will create one or more archive files in abi/dist.  These
    may then be installed in the normal manner.


Build Instructions -- Windows NT
--------------------------------

Building on Windows NT is remarkably similar to building on Linux.  We
use the same set of Makefiles on Linux as well as NT.  You'll need to
get the CygWin32 tool set from Cygnus before you can build.  See
http://www.cygnus.com/misc/gnu-win32/ for information and downloads.
The file you need should be called cdk.exe on B19 and full.exe on B20.1,
and it's going to be around 14 megabytes.  [This file is on the CD.]
Installing this stuff on your NT machine will create an environment
which looks remarkably like a UNIX box.  You'll get a standard bash
shell, GNU make, and all the standard UNIX utilities like sed, gawk,
cp, ls, mv, and so on.  This environment is the key which allows us
to use the same set of Makefiles for both NT and Linux.

Just in case you're wondering, yes, it should be possible to build
this tree with a subset of the tools.  There's 14 meg of stuff there,
and we don't *really* need all of it.  However, we haven't had time or
motivation to identify the specific set of apps we need.  Disk space
is cheap.  If you decide to make the effort to do so, please let us
know, and we'll share that information with other developers.

You also need Visual C++ 5.0.  Obviously, we don't use the IDE at all,
but we do use the compiler, headers, libraries, and so on.  You'll
need them all to be in your PATH, since the Makefiles will expect them
to be readily available.

Additionally, AbiWord uses the PNG and zlib libraries.  Both of these are 
available from our website [and included on the CD], and are peers of the
abi tree.  Once you have all this stuff downloaded, AbiWord should build
just fine.  The main AbiWord makefile will take care of building everything.

There are 2 ways to build and run AbiWord:

[1] Developer Style:  just cd to abi and type 'make'.  To run AbiWord, cd
    to the bin directory and type 'AbiWord -lib ../AbiSuite' -- this will
    help AbiWord find the dictionary and other support files.

[2] End-User Style:  just cd to abi and type 'make distribution ABI_BUILD_VERSION=x.y.z'
    This will build a setup program (abi/dist/setup.exe).  If you then run the
    setup program it will do a normal Win32 installation and create desktop
    icons and start menu items.

Build Instructions -- QNX
--------------------------

Building on QNX is similar to the other unix like platforms.  We rely on 
the command line utilities for bash, sed, gawk, etc.  

There are 2 ways to build and run AbiWord:

[1] Developer Style:  just cd to abi and type 'make'.  To run AbiWord, cd
    to the bin directory and type 'AbiWord -lib ../AbiSuite' -- this will
    help AbiWord find the dictionary and other support files.

[2] End-User Style:  just cd to abi and type 'make distribution ABI_BUILD_VERSION=x.y.z'
    This will build a distribution zip file (abi/dist/AbiSuite-x.y.z-$(arch).zip).
    Expand this in /boot/apps.  You can then run /boot/apps/AbiSuite/bin/AbiWord.

Components that you will need to checkout from CVS, or have installed, are:
	abi 
		You wouldn't be reading this if you didn't have this checked out
	abidistfiles
		This contains the basic spelling libraries and is needed for building
		a distribution (ie [2])
	wv
		This contains the Word converter library
	expat
		This contains the XML parser library
	zlib
		This is used for compression
	libpng
		This is used for AbiWord's internal graphics representation
	libiconv
		This is used for internationalization and character support
	psiconv
		This is used for the Psion importer.
	

Build Instructions -- BeOS
--------------------------

Building on BeOS is similar to the other platforms.  We rely on the
GNU command line utilities for bash, sed, gawk, etc.  On Intel systems
we use GCC and on PPC we use MWCC.

There are 2 ways to build and run AbiWord:

[1] Developer Style:  just cd to abi and type 'make'.  To run AbiWord, cd
    to the bin directory and type 'AbiWord -lib ../AbiSuite' -- this will
    help AbiWord find the dictionary and other support files.

[2] End-User Style:  just cd to abi and type 'make distribution ABI_BUILD_VERSION=x.y.z'
    This will build a distribution zip file (abi/dist/AbiSuite-x.y.z-$(arch).zip).
    Expand this in /boot/apps.  You can then run /boot/apps/AbiSuite/bin/AbiWord.


Build Instructions -- MacOS
---------------------------

This will build a PowerPC version of AbiWord. Currently 68k is not supported.

You will need to get:
-zlib
-libpng
-libiconv

Two different solutions:

[1] using Metrowerks CodeWarrior. Open the project in src/config/platform/macos.mcp (or 
macos.xml if you don't have version 6.0 of CodeWarrior).

[2] using MPW. Start MPW shell, go to the abi directory and execute the script mpw-build.
It will work with MPW 3.5 GM. Currently Metrowerks MPW compilers are not supported.


Build Instructions -- MacOS X
-----------------------------

Only MacOS X final is supported. MacOS Public Beta is no longer.

Building on MacOS X is similar to the other UNIX platforms. We rely on the
GNU command line tools like zsh, sed, make, etc. that are provided on 
MacOS X. Currently this will be the system to build a Carbon version
of AbiWord under MacOS X. Currently only Mach-O binary format is 
supported (like on NeXTStep). 

You'll need to check out the following extra modules from abi CVS:
-libpng
-libiconv
They'll get build by the make system.

=======================================================================================
FAQ
=======================================================================================

Where is the executable?
------------------------

The AbiWord executable is created in abi/src/$(OS)_$(OS_VERSION)_$(OS_ARCH)_OBJ/bin.
(on my machine this is abi/src/WIN32_4.0_i386_OBJ/bin/AbiWord.exe)  You may use this
copy to run for debugging or experimentation, but you should probably go ahead and
do an install.


Where are the other generated files?
------------------------------------

The object files (.o or .obj) are placed in abi/src/<platform>/obj
The library files (.a, .so, or .lib) are also placed in this directory.
