First you need to build some things from ThirdParty which SOPE is based on.
Note:
ThirdParty in this case doesn't mean that you need to fetch the
sources of those libraries and tools yourself. Stable - and sometimes
patched - versions of the required sources are contained in the OGo source
tree in the
ThirdParty
Subversion repository.
Note:
Updated for SOPE 4.3, which does not require ThirdParty libxml2 and
SpiderMonkey.
Make => ObjC-Runtime => libFoundation => libical
Requirements
For building the initial ThirdParty stage, you need to ensure that several
GNU build tools are installed. Use the package management system of your
platform to install the proper packages before going on.
Note: on MacOSX just install the regular developer packages, nothing
additional is required.
GNUstep make
is a package which makes it a lot easier to build shared
modules and libraries on a wide range of platforms. Further it provides
a shell environment to support location independend installations (without
any fixed pathes compiled into the software).
Note: on MacOSX or when building for gnustep-base, use the current
gnustep-make package provided by
GNUstep. On MacOSX
ensure that you compile for the apple-apple-apple library combo.
|
This will create an OGo deployment directory in your home directory. For all remaining steps you always need to ensure that the GNUstep environment is properly loaded (by sourcing GNUstep.sh) !
Check for success: The $HOME/OGo directory should have been created, it should contain a Makefiles directory, and most important, the Makefiles directory should contain GNUstep.sh.
It actually isn't really necessary to provide an own Objective-C runtime
and OGo should work just fine with the system one coming with GCC.
Nevertheless we felt that it makes deployment easier (especially on Windows)
providing an own one.
Note: not required on MacOSX.
|
This will install the libobjc shared library and it's headers into the OGo deployment directory.
Check for success: libobjc_d.so.2 should exist in the OGo tree (eg try find $HOME/OGo -name libobjc_d.so.2.
The
libFoundation library, initially written by
Ovidiu Predescu
<ovidiu@apache.org>
and Mircea Oancea, contains an implementation
of the OpenStep Foundation API (basic things like collection and string
classes, operating system abstractions etc).
Note:
Use the libFoundation library coming with OGo! Its far more recent (v1.0.x)
than the library available on Ovidiu's page (v0.9.x) or on SourceForge.
Note: not required on MacOSX or when building for gnustep-base.
|
This will configure libFoundation for GNUstep (required for OGo) and install it into the OGo root, headers, shared library and the Defaults tool.
Check for success: This package provides a tool called Defaults to manage configuration data (NSUserDefaults). You can check whether libFoundation is properly installed by trying it:
|
The libical library is used for parsing iCalendar and vCard files. Actually OGo wraps libical in a SAX XML driver in skyrix-xml and processes the structures parsed by libical as XML entities. That way it can easily work on 'iCalendar files in XML syntax' (eg used in WCAP and xCal).
|
This will configure libical as required for OGo and install it into the OGo deployment root.
Check for success: After installation $HOME/OGo/Headers/ should contain the ical.h header file. A subdirectory $HOME/OGo/Libraries/ should contain libical.so.0.
After you have finished building the basic things from ThirdParty required, you can go on building the core application server, SOPE.