Difference between revisions of "CcPublisher Prerequisites"

From Creative Commons
Jump to: navigation, search
(Setting Up a ccPublisher Sandbox)
 
(8 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
[[Category:CcPublisher]]
 
[[Category:CcPublisher]]
 
[[Category:Developer]]
 
[[Category:Developer]]
{{incomplete}}
 
This page describes setting up a sandbox for running ccPublisher 2 and P6 from CVS.
 
  
== Setting Up a ccPublisher Sandbox ==
+
This page describes the prerequisites needed to develop ccPublisher.  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.
  
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]].
+
* '''Python 2.4'''
 
 
As of 8 February 2006, a C compiler is no longer required to build ccPublisher 2 or P6.
 
 
 
=== 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.
 
 
 
* '''Python 2.4''' Python 2.4 is required.
 
 
** Windows: http://python.org/download/
 
** Windows: http://python.org/download/
 
** Mac OS X: http://undefined.org/python/
 
** Mac OS X: http://undefined.org/python/
Line 20: Line 10:
 
* '''pywin32''' Python Extensions for the Win32 API (Windows only)
 
* '''pywin32''' Python Extensions for the Win32 API (Windows only)
 
** http://starship.python.net/crew/mhammond/win32/Downloads.html
 
** http://starship.python.net/crew/mhammond/win32/Downloads.html
* '''wxPython''' Unicode build recommended
+
* '''wxPython''' Unicode build required to properly support non-ANSI characters in ''any'' input field.  So really, just use the Unicode build.
** [http://wxpython.org/download.php#binaries binary downloads]
+
** [http://prdownloads.sourceforge.net/wxpython/wxPython2.6-win32-unicode-2.6.2.1-py24.exe Windows]
 +
** [http://prdownloads.sourceforge.net/wxpython/wxPython2.6-osx-unicode-2.6.2.1-macosx10.3-py2.4.dmg Mac OS X (10.3 and later)]
 +
** Linux: use a distro-specific package or see [http://wxpython.org/download.php the wxPython download page] for other options
 
* '''elementtree'''
 
* '''elementtree'''
 
** ''Note:'' This is a change as of 8 February 2006 (see [[why ElementTree]] for details on the switch from libxml2)
 
** ''Note:'' This is a change as of 8 February 2006 (see [[why ElementTree]] for details on the switch from libxml2)
 
** http://effbot.org/downloads/#elementtree
 
** http://effbot.org/downloads/#elementtree
  
=== Getting Started ===
+
== Developing ccPublisher ==
 
 
Before you begin building you will need to check out the source code.  ccPublisher uses [http://subversion.tigris.org 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 <code>setup.py</code> 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 <code>main.py</code> 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 ===
 
{| border=1 width="100%"
 
! Windows
 
! Mac OS X
 
! Linux
 
|-
 
|width=33%|
 
* '''py2exe''' http://www.py2exe.org/
 
|width=33%|
 
* '''py2app'''
 
|width=33%|
 
|}
 
  
=== Building ===
+
Depending on your platform and toolset, your development model may vary slightly.  See the appropriate tool/platform-specific page:
  
=== Packaging ===
+
* [[Developing ccPublisher with Command Line Tools]]
 +
* [[Developing ccPublisher with Eclipse]]
 +
* [[Developing ccPublisher with Wing]]

Latest revision as of 14:15, 29 June 2006


This page describes the prerequisites needed to develop ccPublisher. 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.

Developing ccPublisher

Depending on your platform and toolset, your development model may vary slightly. See the appropriate tool/platform-specific page: