How can I modify/compile JabberCOM?


  1. Get a copy of Borland's Delphi version 5. I use Delphi professional, but standard may work ok.

  2. Start installing 3rd party Components. Surf over to Nevrona and download a copy of the Indy Socket components. I use these to handle the file transfer stuff (http send/receive). These components are Open Source, and are also used in the JabberCOM library.

    You'll need to either run the "installer" or download the zip file and install the package with all of the components.

  3. Get the Hyperstring String Library. This freely available lib is available from: http://www.mindspring.com/~efd/hyperstr.htm.
    Download the DCU files for Delphi 5 and install them. The source code for this library is available for a fee, but you can use the DCU files for free.

  4. Get a CVS tool/program. If you've never used cvs before, you should read some of the sourceforge documents about cvs. An introduction to the basics of CVS can be found here.

    If you don't have a copy of any cvs programs or tools, surf to the WinCVS site and download a copy if you want a fancy GUI, or surf to CVSHome.org if you want the old-school command line utility. Specific instructions on using WinCVS with a sourceforge project are over here.

    NOTE: For those wondering, I do a LOT of work with CVS every day and have given up using the GUI WinCVS application. I use the command line tools 100% of the time now as they seem a lot more "fool proof" and sometimes easier :).

  5. Checkout the source code.
    The CVS Information for JabberCOM gives you the appropriate CVSROOT to use to checkout the sourcecode. Unless you're listed as part of the JabberCOM "team", you need to use anonymous CVS access. Use:
    	Username = anonymous
    	Password = ..blank, just hit enter..
    Once you've logged in, use:
    	cvs co xml
    	cvs co jabbercom
    To do fresh checkouts of the source code.
  6. Setup the project options
    You need to setup a conditional compile "Jabber;JabberCOM" in the project options to make everything work right :)

    Select Project | Options,