Difference between revisions of "CcPublisher Prerequisites"

From Creative Commons
Jump to: navigation, search
(Prerequisites)
Line 22: Line 22:
 
* '''wxPython''' Unicode build recommended
 
* '''wxPython''' Unicode build recommended
 
** [http://wxpython.org/download.php#binaries binary downloads]
 
** [http://wxpython.org/download.php#binaries binary downloads]
* '''libxml2 & libxslt2''' with Python bindings
+
* '''elementtree'''
** Windows: http://users.skynet.be/sbi/libxml-python/
+
** ''Note:'' This is a change as of 8 February 2006 (see [[why ElementTree]] for details on the switch from libxml2)
** Mac OS X: build instructions [http://jamesclarke.info/notes/InstallLibxml2 here] and [http://www.schooltool.org/documentation/developer-references/setting-up-a-development-environment/mac-os-x here]; note that you may have to adjust the Python paths used to point to your Python 2.4 install
+
** http://effbot.org/downloads/#elementtree
** Linux: http://xmlsoft.org (usually also available in the distribution package repository)
 
  
 
=== Getting Started ===
 
=== Getting Started ===

Revision as of 01:10, 9 February 2006


This page describes setting up a sandbox for running ccPublisher 2 and P6 from CVS.

Setting Up a ccPublisher Sandbox

A sandbox is a checkout of the ccPublisher sourcecode from Subversion. Setting up a sandbox lets you work with the most recent features, as well as work on the source code yourself. For background on how the sourcecode is organized see ccPublisher 2 Architecture.

In order to run ccPublisher 2 from source, you will need to first build the P6 framework. P6 includes portions of the Zope3 framework which require a C compiler. If building on Win32 without Visual C++ 7.1, you will need to download and install the free Microsoft Toolkit Compiler. Instructions for configuring Python 2.4.1 with the Toolkit Compiler are available at http://www.vrplumber.com/programming/mstoolkit/.

Prerequisites

We try to maintain pure Python within our Subversion repository (either with a vendor tag or svn:external). However, there are a handful of dependencies which are better built on individual systems or installed from binaries.

Getting Started

Before you begin building you will need to check out the source code. ccPublisher uses Subversion for source control. To check out the most recent copy of the code, execute the following command:

 $ svn co svn://svn.berlios.de/cctools/publisher/trunk ccpublisher

This will check out the entire required source tree, including dependencies from the Zope 3 project, into the ccpublisher directory.

Building

Before you can run from source you need to build the zope.proxy C extension. The included setup.py will handle the actual compilation process. Assuming you checked out ccPublisher as show above, just run:

 $ cd ccpublisher
 $ python setup.py build

This will compile the extension module, but will not install it into the standard Python path. So before you can run from within the checkout, you need to move the compiled extension to the appropriate directory. On Linux systems, the extension takes the form of a .so file, so your command will look something like:

 $ cp build/lib.linux-i686-2.4/zope/proxy/_zope_proxy_proxy.so zope/proxy

Running

After you've copied the zope.proxy extension into the appropriate location, run main.py to start ccPublisher:

 $ python main.py

Editting the Source

Submitting Your Changes

Distributing ccPublisher

This section contains basic information on building a distribution of ccPublisher (or other P6 Application). We will have scripts for this, we just haven't found the right tool. Ideally something like Ant, but without the Java overhead. Suggestions welcome.

Prerequisites

Windows Mac OS X Linux
  • py2app

Building

Packaging