Introduction

Xara Xtreme is built from over a million lines of source code (only a little smaller than Firefox, but decidedly less complex), and whilst compiling it will take your computer quite some time, the process should not be unduly taxing. Even so, this project is not likely to be a good first one for beginners.

These instructions are based on the work currently being done to deliver the first downloadable disk image of Xara Xtreme and concentrate on a single path that works for us. There are probably variants of these techniques that may work better for you, and it is not claimed that these instructions must be followed slavishly

Having said that, the final link is known to require the tools from XCode 2.2, and therefore Mac OS 10.4.3 (or later). You should also see How to solve '_objc_exception_set_functions' ZeroLink errors in Xcode, in case of doubt.

As with any development effort new to you, you should not use a machine that you depend on for work or similar activities. You may need to alter its configuration or even do a complete re-install. Be prepared to reload from back-ups.

Operating System

You should use Tiger of at least version 10.4.3, and preferably the latest version available to you.

Development Tools

XCode

XCode can be installed from your Tiger DVD, and the latest version is downloadable from the Apple Development Centre. Apple's XCode information is most comprehensive and can be supplemented from the pages at theCocoa Developer's Wiki

Fink

You should install the latest stable version of Fink. (Note that at the time of writing Fink is only available in a preliminary version for Intel Macs. Follow the instructions on http://fink.sourceforge.net to install the Intel Mac version.)

Then use Fink to install these tools and libraries:

pkgconfig
automake Version 1.9 or later required
autoconf Version 2.59 or later required
libpng Version v1.2.8 or later required
libjpeg Version 6b
libxml2 Version 2.6.0 or later required
You can check that you have these tools and libraries with a command like:
sudo fink list pkgconfig automake autoconf libpng libjpeg
the expected output being something like:
Password:



Information about 2232 packages read in 7 seconds.



autoconf 2.13-5 System for generating configure scripts, v2.13



i autoconf2.5 2.59-7 System for generating configure scripts



i autoconf2.54 2.54-4 System for generating configure scripts



automake1.4 1.4-5 Tool for generating GNU Standards-compliant Makefiles



automake1.5 1.5-6 Tool for generating GNU Standards-compliant Makefiles



automake1.6 1.6.3-6 Tool for generating GNU Standards-compliant Makefiles



automake1.7 1.7.6-6 Tool for generating GNU Standards-compliant Makefiles



automake1.8 1.8.5-3 Tool for generating GNU Standards-compliant Makefiles



i automake1.9 1.9.4-2 Tool for generating GNU Standards-compliant Makefiles



p automaken [virtual package]



i libjpeg 6b-16 JPEG image format handling library



i libjpeg-bin 6b-16 Executables for libjpeg package



i libjpeg-shlibs 6b-16 Shared libraries for libjpeg package



libpng-shlibs 1.0.12-7 PNG image format handling library (old version)



i libpng3 1:1.2.8-1 PNG image format handling library



i libpng3-shlibs 1:1.2.8-1 Shared libraries for libpng3 package



i pkgconfig 0.15.0-2 Manager for library compile/link flags
The install command is similar, to wit:
sudo fink install pkgconfig automake autoconf libpng libjpeg
but you only need to install what you do not have, or what is out of date.

gettext

Check the version of gettext installed on your Mac. If Fink reports anything older than 0.14.3 then you need to manually install the latest version of gettext:

Go to http://www.gnu.org and search for information about the gettext project. Download a tarball from http://ftp.gnu.org/gnu/gettext, unpack it into a suitable folder then in that folder:

autoreconf -f -i -s
./configure (use --prefix=[PATH], if you want to install in alternative location)
make
sudo make install 

In order for the updated gettext utilities to be picked-up by subsquent build commands, /usr/local/bin must be added to the front of your path.

Subversion

Suggested source: http://metissian.com/projects/macosx/subversion/

Alternative source: http://www.codingmonkeys.de/mbo/ 

Retrieve and install wxWidgets

Download wxWidgets 2.6.3 or later (you only need the Macintosh version, not the "all platforms" version). Suggested source: http://www.wxwidgets.org/dl_mac2.htm#stable (note that as of publishing 2.6.3 has not been released, but 2.6.3-rc1 has, which will do, so replace "2.6.3" below by "2.6.3-rc1"). wxWidgets 2.6.2 or earlier is liable to crash on the Mac.

You can follow the installation instructions at http://wiki.wxwidgets.org/wiki.pl?Mac_OS_X_And_Xcode_For_Beginners if you want but here is a condensed version that makes a particular configuration of wxWidgets available to the Xara Xtreme build only. (The advantage of doing this is that it won't upset any other wxWidgets installation that may be on the machine.)

Download these files:

  • wxMac-2.6.3.tar.gz
  • wxWidgets-2.6.3-HTML.tar.gz
  • wxWidgets-2.6.3-PDF.tar.gz

Double click on each of those files in turn, in the order shown above to unpack them. This will create new directories: wxMac-2.6.3, wxWidgets-2.6.3, wxWidgets-2.6.3 2 on the desktop.

You will only keep the wxMac-2.6.3 directory but you'll need the documentation and patches from the other directories. Therefore you should copy everything from the other directories back into wxMac-2.6.2. Here are the steps:

  1. rename wxMac-2.6.3/docs/html to html.old
  2. move wxWidgets-2.6.3/docs/html to wxMac-2.6.3/docs/html
  3. move wxWidgets-2.6.3 2/docs/pdf to wxMac-2.6.3/docs/pdf
  4. delete the directories wxWidgets-2.6.3, wxWidgets-2.6.3 2
  5. if there are patches for 2.6.3, copy those as well. There were none as of June 16, 2005.

You can now delete the *.tar and *.tar.gz files if you want. Or you can archive the *.tar.gz files somewhere in case you want to reinstall the libraries later.

You can now move the wxMac-2.6.3 directory to a good working location. Any name will do, but you probably should leave 2.6.3 somewhere in the name because you may decide to use a newer version in the future. Suggested location:

  • /Users/yourname/wxMac-2.6.3

The instructions below will assume you used this folder name.

.........

Configure wxWidgets for Xara Xtreme

On the command line:

cd to the wxWidgets folder (should be called "wxMac-2.6.3")

cd /Users/yourname/wxMac-2.6.3

Create a folder inside that called "build-unicode-debug"

mkdir build-unicode-debug

cd to that folder

cd build-unicode-debug

Use this command to configure a shared, debug, unicode version of wxWidgets:

../configure --enable-shared --enable-monolithic --enable-unicode --enable-debug --enable-postscript

Then build wxWidgets objects and libraries:

make

.........

Get Xara Xtreme ("Camelot") source code

Subversion access instructions

This document will assume that you have placed the Xara Xtreme source files in a folder called "/Users/yourname/XaraLX". If you have used a different location you will need to make appropriate substitutions in some of the following commands.

Because a supplied library is not in the same location as the one it was built in, you must rebuild the libraries index using the ranlib command:

ranlib /Users/yourname/XaraLX/libs/darwin/libCDraw.a

Configure and build Xara Xtreme

On the command line:

cd to your XaraLX source folder

cd /Users/yourname/XaraLX

Set up the configuration system

autoreconf -f -i -s

If this command fails with an error about being unable to find autopoint, you must add the path to the  gettext install directory to the start of your path. Configure the Xara Xtreme makefiles and tell them where your wxWidgets is stored:

./configure --enable-debug --with-wx-config=/Users/yourname/wxMac-2.6.3/build-unicode-debug/wx-config
Finally, build Xara Xtreme
make

If that fails, or starts to run autoconf again, try this:

make clean
touch *
make

Last Updated ( Saturday, 12 August 2006 11:35 )