AbiSource logo AbiSource banner

Home 

Company 
   Contacts 
   Press 
   Writings 
   About This Site 

Products 
   Download 
   Reviews 
   The Store 
   FAQ 
   Documentation 

Developer 
   Weekly News 
   POW 
   Screen Shots 
   Download 
   Build 
   Versions 
   Bugs 
   LXR 
   Doxygen 
   Bonsai 
   Tinderbox 
   Bugzilla 
   FAQ 

License 
   GPL 
   Trademark 

 

Build Instructions

Linux

To build the Linux version, you will need the following things in addition to the abi source tree itself:

  • You will need gcc, make, and all the tools which usually accompany them. In most situations, you should already have all these, but if you need them, try the FSF.

  • GTK+ 1.2.

  • libpng (most Linux systems seem to have this already).

  • zlib (most Linux systems seem to have this already).

  • expat. This one is treated specially, since expat itself does not seem to be widely available on Linux systems. You will need the version of expat from us, which is identical to the one available from Jim Clark, except for slight modifications to integrate it with our build system. A tarball of expat is available in the downloads directory. You can also obtain it from our CVS server under the top-level package name expat.

  • WV. WV is a word import library written by Caolan McNamara. It is also available in tar.gz format from our downloads directory. Although this is not an official release of mswordview, it is a recent version which we know builds with our tree at the time of the latest AbiWord release. The official wv release is here. Both wv and expat must be present at the same level as the "abi" tree before you can begin building AbiWord.

  • libiconv. libiconv is a character conversion library necessary for the support of multiple languages. The most recent versions of Linux already contain this library, specifically those distributions based on GNU C Library version 2.1 or later. If you have one of these recent Linux distributions, you will not need to download this library. If you do not have one of these recent distributions, you will need to have this library available as a peer to the abi tree, similar to expat and wv. This libiconv library is also available from the downloads directory.

Our tree builds under a variety of different Linux distributions, but of course we are not able to test them all.

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. Make sure the different modules such as expat and wv are a peer directory of the abi directory.

After you have all the stuff you need, to get things started, just cd into the abi/ directory, and type make.

When the build has completed, you can type make install, as root, to install the AbiSuite distribution files and executables to /usr/local/AbiSuite. Two symbolic links will be created in /usr/local/bin, called AbiWord and abiword. You can execute either of these to run the binary you just compiled and installed. Like many other UNIX make systems, our install target honors the $prefix variable. If you set this variable, the makefiles will install to $prefix/AbiSuite and $prefix/bin; /usr/local is the default value for this variable.

Any other UNIX variants

AbiWord can be built on a wide variety of UNIX variants, including Solaris, FreeBSD, OpenBSD, NetBSD, IRIX, AIX, HP-UX and others. If your system is not currently detected by abi/src/config/abi_defs.mk, clone a Makefile from abi/src/config/platforms which is close to your platform, give it a name representing your platform and make any necessary changes. We encourage you to submit any new Makefiles or changes to existing platform configurations to our development mailing list.

WinNT

Building on Windows NT is remarkably similar to building on Linux. We use the same set of Makefiles on Linux as well as NT. The following requirements apply before you will be able to build:

  • You will need to get the Cygwin tool set from Cygnus before you can build. In previous versions of Cygwin, the file was called cdk.exe. When this was originally written the latest version of Cygwin is 20.1, and the file needed was named full.exe, and it is around 12 megabytes. Installing this on your NT machine will create an environment which looks remarkably like a UNIX box. You will get a standard bash shell, GNU make, and all the standard UNIX utilities like sed, awk, 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.

    More reently, Cygwin 1.1 has been released. AbiWord will work this release as well, but there are some caveats. More specific AbiWord-related information as it relates to Cygwin is available.

    Just in case you are wondering, yes, it should be possible to build this tree with a subset of these tools. There are 12 megabytes 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. Someone on our mailing list did, and you might find the results helpful.

  • You will need libpng, zlib, wv, libiconv, and expat. Windows developers should get all these things from us here at AbiSource since we have them in the form our build system expects them. You can download zip files for all three of these from the downloads directory. Or, you can get them from CVS. The top-level package names are 'expat', 'libpng', 'wv', 'libiconv' and 'zlib'. See above for more info on this.

  • You 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 will need them all to be in your PATH, since the Makefiles will expect them to be readily available. Decoupling from VC++ may not be a trivial task, but we would welcome anyone who wants to try it.

    (You should be able to build with Visual C++ 6.0 as well.)

    Building under Win98 should work as well, but we usually use NT. See this note from the mailing list archives for tip on how to do it.

Once you have all this stuff installed, then you should be able to build the tree in the same way that the Linux version builds. Just cd into the abi/ directory and type make. The build system will automatically build zlib, libpng, wv, libiconv, and expat for you, if needed.

BeOS

Here again, building AbiWord for BeOS is similar because it uses the same set of Makefiles as the NT and Linux builds. In addition to the information below, see this note for more info.

To build the BeOS version, you'll need the following things, in addition to the abi source tree itself:

  • You will need either the metrowerks compiler (PPC) or gcc (x86) set up as cc. In most situations, you should already have all this. The BeOS version as it stands now should work with either BeOS R3 or R4 for either Intel or PPC.

  • libpng and zlib are required. The easiest way to use them is to pull them off of the AbiSource cvs tree as zlib and libpng (cvs checkout zlib libpng).

  • expat. You will need the version of expat from us which is identical to the one available from Jim Clark except for slight modifications to integrate it with our build system and fixes made to not hit the 32k stack limit. A tarball of expat is available in the downloads +directory. You can also obtain it from our CVS server under the top-level +package name expat (cvs checkout expat).

  • WV. WV is a word import library written by Caolan McNamara. It is also available in tar.gz format from our downloads directory. Although this is not an official release of mswordview, it is a recent version which we know builds with our tree at the time of the latest AbiWord release. The official wv release is here. Both wv and expat must be present at the same level as the "abi" tree before you can begin building AbiWord.

  • libiconv. libiconv is a character conversion library necessary for the support of multiple languages. You will need to have this library available as a peer to the abi tree, similar to expat and wv. This libiconv library is also available from the downloads directory.

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.

After you have everything you need to get things started, just cd into the abi/ directory and type make. This initial make may take a while so get get a coffee.

Where do the binaries go?

Builds are placed in a directory which bears the name of the platform on which the build is taking place under abi/src. Under the destination directory, whatever it gets called on your system, you'll find a bin directory. Under there, you will find AbiWord (or AbiWord.exe).

Copyright 1998-2001 SourceGear Corporation, Sam Tobin-Hochstadt and others. All rights reserved. Send comments to webmaster@abisource.com.
AbiSource, AbiSuite, AbiWord, and the AbiSource logo are trademarks of SourceGear Corporation. All other product names, company names, or logos cited herein are the property of their respective owners.