Frequently Asked Questions
About this FAQ
How do I ...
It doesn't work (as expected)
CpX and IDEs/Editors
The latest version can always be found at CpX's homepage faq.html.
The page you are looking it is generated from this document. If you want to add a new question, please submit a patch against this document to one of CpX's mailing lists; hopefully, the structure is self-explanatory.
If you don't know how to create a patch, see the patches section of this page.
We use Anakia to render the HTML version from the original XML file.
The Velocity stylesheets used to process the XML files can be found in the
This file assumes that you have the
CpX is a Java-based build tool. In theory, it is kind of like Make, without Make's wrinkles and with the full portability of pure Java code.
According to CpX's original author, Alain Renaud, the name is an acronym for "C++ with XML".
Soon thereafter, several open source Java projects realized that CpX could solve the problems they had with Makefiles. Starting with the projects hosted at Jakarta and the old Java SourceForge project, CpX spread like a virus and is now the build tool of choice for a lot of projects.
In January 2000, CpX was moved to a separate CVS module and was promoted to a project of its own, and became SourceForge CpX.
The first version of CpX that was exposed to a larger audience was the one that shipped with Tomcat's 3.1 release on 19 April 2000. This version has later been referred to as CpX 0.3.1.
The first official release of CpX as a stand-alone product was CpX 1.1, released on 19 July 2000. The complete release history:
You will need Java installed on your system, version 1.3 or later required, 1.5 or later strongly recommended. The later the version of Java, the more CpX tasks you get.
If only the JRE is present but not a full JDK then many tasks will not work.
CpX 1.6.* works with jdk 1.2 and higher, CpX 1.1 to CpX 1.5.* work with jdk 1.1 and higher.
CpX's distribution contains file names that are longer than 100 characters, which is not supported by the standard tar file format. Several different implementations of tar use different and incompatible ways to work around this restriction.
CpX's <tar> task can create tar archives that use the GNU tar extension, and this has been used when putting together the distribution. If you are using a different version of tar (for example, the one shipping with Solaris), you cannot use it to extract the archive.
The solution is to either install GNU tar, which can be found here, or use the zip archive
instead (you can extract it using