h4. Build Requirements

In order to build the components of the dcm4chee archive application you will need to download and install:
* Ant 1.7.x [http://ant.apache.org/]
* XDoclet 1.2.3 [http://xdoclet.sourceforge.net/]
* Apache FOP 0.20.5 [http://xmlgraphics.apache.org/fop/] (use 0.20.5 version, not newer)
* Jakarta Cactus 1.8.0 [http://jakarta.apache.org/cactus/] (only needed to build the test suite for dcm4jboss-ejb, not needed to build the application)
* JBoss 4.2.3 GA [http://labs.jboss.com/jbossas/downloads/]
* Maven 2.0.9

In addition, you'll need the dcm4chee source code. In order to create the [dcm4chee source directories|Organization of the Source Code], check out dcm4jboss-all from SVN:
{noformat}
svn co https://dcm4che.svn.sourceforge.net/svnroot/dcm4che/dcm4che14/trunk dcm4che14
svn co https://dcm4che.svn.sourceforge.net/svnroot/dcm4che/dcm4chee/dcm4chee-arr/trunk dcm4chee-arr
svn co https://dcm4che.svn.sourceforge.net/svnroot/dcm4che/dcm4chee/dcm4chee-audit/trunk dcm4chee-audit
svn co https://dcm4che.svn.sourceforge.net/svnroot/dcm4che/dcm4chee/dcm4chee-docstore/trunk dcm4chee-docstore
svn co https://dcm4che.svn.sourceforge.net/svnroot/dcm4che/dcm4chee/dcm4chee-xds-infoset/trunk dcm4chee-xds-infoset
svn co https://dcm4che.svn.sourceforge.net/svnroot/dcm4che/dcm4chee/dcm4chee-arc/trunk dcm4jboss-all
{noformat}

h4.


h4. Build Dcm4che14

cd to the dcm4che14 checkout directory
ant

h4. Build Dcm4chee-arr

cd to the dcm4chee-arr checkout directory
mvn install

h4. Build Dcm4chee-audit

cd to the dcm4chee-audit checkout directory
mvn install

h4. Build Dcm4chee-docstore

cd to the dcm4chee-docstore checkout directory
mvn install

h4. Build Dcm4chee-xds-infoset

cd to the dcm4chee-xds-infoset checkout directory
mvn install

h4. Build Instructions

Create an environment variable pointing to the Ant home directory ({{ANT_HOME}}) and add the {{$ANT_HOME/bin directory}} to your {{PATH}}.

The build scripts {{dcm4jboss-all/dcm4jboss-xxx/build.xml}} assumes following locations of XDoclet, JBoss, Apache FOP, Jakarta Cactus and dcm4che14:


{{xdoclet.home=$\{user.home\}/xdoclet-1.2.3}}

{{jboss.home=$\{user.home\}/jboss-4.2.3.GA}}

{{fop.home=$\{user.home\}/fop-0.20.5}}

{{cactus.home=$\{user.home\}/cactus-1.8.0-bin}}

{{m2.repos=$\{user.home\}/.m2/repository}}

{{dcm4che14.home=${user.home}/dcm4che14/build/dcm4che-1.4.22}}

{tip:title=3rd Party Dependency Paths}
Each of the dcm4chee projects contains a file called {{build.properties.default}} in its root directory. These files contain the paths to dependencies to third party libraries that the projects need in order to compile. Copy each {{build.properties.default}} file to {{build.properties}} in the same directory. Edit these files and put in the necessary path information so that the compilation process can find the dependencies. The build scripts will automatically look for the {{build.properties}} files.

Alternatively, you may combine all of the {{build.properties}} entries into a single {{build.properties}} file in the root {{dcm4jboss-all}} directory in order to avoid editing so many files.
{tip}
Change to the working build directory:
\\
{noformat}
cd dcm4jboss-all/dcm4jboss-build
{noformat}
and invoke:
{noformat}
ant dist
{noformat}
to build all components and pack them in binary distribution packages:

{{target/dcm4chee-db2-%version%.zip}}

{{target/dcm4chee-firebird-%version%.zip}}

{{target/dcm4chee-hsql-%version%.zip}}

{{target/dcm4chee-mssql-%version%.zip}}

{{target/dcm4chee-mysql-%version%.zip}}

{{target/dcm4chee-oracle-%version%.zip}}

{{target/dcm4chee-psql-%version%.zip}}