After you have finished building the basic things from ThirdParty required for OGo, you can go on building the core application server, SOPE.

The SOPE directory contains Objective-C libraries for processing XML, IMAP4, LDAP and a full HTML template based application server.

Requirements

  • gnustep-make, gnustep-objc, libxml2, libical, js
  • zlib Development package (including zutil.h !)
  • OpenLDAP libs & development headers
  • Note: Do not use the zlib header files from the Linux kernel. You need to install the proper zlib development headers. On some systems the zutil.h seems to be missing, get it from somewhere ;-)

    skyrix-xml => skyrix-core => skyrix-sope

    SKYRiX XML Processing Libraries [next]

    Besides for parsing XML as the name suggests, skyrix-xml libraries are also used for processing HTML and iCalendar/vCard files. It implements the well-known SAX, DOM and XML-RPC APIs for Objective-C.
    [Details]

    cd skyrix-xml
    make -s debug=yes install
    cd ..

    This will install the libSaxObjC, libDOM and libXmlRpc libraries and some XML processing tools and skyrix-xml examples.

    Check for success: After installation you should be able to execute both, domxml and saxxml, which can be used to check whether the XML parsing subsystem actually works:

    $ cd SOPE/skyrix-xml/samples
    $ saxxml data/slashdot.rss
    start document ..
      ns-map: rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns#
      ns-map: dc=http://purl.org/dc/elements/1.1/
    ...

    This should print out the processed XML tree. If it reports a missing XML parser, something is broken.

    SKYRiX Core Libraries [next] [prev]

    This package contains various base libraries required for SOPE, some extensions to Foundation, IMAP4/MIME processors, an LDAP client library, iCalendar model objects, etc.
    When you get a SASL error during compilation, specify the nosasl=yes in the make commandline. If you compile against Oracle libraries, you need reentrant code, so specify reentrant=yes. Finally, when you don't want to link against OpenSSL for SSL support, give nossl=yes as a parameter to make.
    [Details]

    cd skyrix-core
    # TODO: describe options: nosasl, reentrant, nossl make -s debug=yes install
    cd ..

    This will install the libEOControl, libNGExtensions, libNGStreams, libNGLdap, libNGMime and libNGiCal libraries into the GNUstep deployment root.
    Examples are not installed by default, if you want to install them as well, do cd samples;make -s debug=yes install.

    Check for success: This package installs no tools per default, so just check whether the libraries mentioned above are located in $GNUSTEP_USER_ROOT/Libraries/.

    SKYRiX Object Publishing Environment [prev]

    This directory contains the actual SOPE libraries, that is, the OGo application server. It's used for processing HTML templates, for handling XML-RPC and WebDAV requests, for managing sessions, etc.
    [Details]

    cd skyrix-sope
    make -s debug=yes install
    cd ..

    All the SOPE libraries will be installed, along with some tools useful for testing the system: xmlrpc_call, sope, sxc_ls, sxc_call and wod.

    Check for success: You can test the XML-RPC subsystem using the xmlrpc_call utility which allows you to query XML-RPC servers from the commandline:

    $ xmlrpc_call \
      http://www.oreillynet.com/meerkat/xml-rpc/server.php
    meerkat.getChannels
    meerkat.getCategories
    meerkat.getCategoriesBySubstring
    meerkat.getChannelsByCategory
    meerkat.getChannelsBySubstring
    meerkat.getItems
    system.listMethods
    system.methodHelp
    system.methodSignature

    When you are done with SOPE, you need to build gnustep-db, before you can continue with the actual OGo groupware things.
    Continue at the gnustep-db.