![]() |
|
| Continent: (US) (EU) (AU) | Language: English | Français | Deutsch (mirror) | Nederlands | Português |
|
Hacking GnuCashThere are a number of steps to go through to hack on gnucash. You will need to install development (*-devel-*) versions of the packages listed on the tools page. The latest development versions of gnucash may depend on bleeding edge versions of some gnome tools (e.g. gnome-print). You may also need to get unusual or special versions of g-wrap and guppi.Getting the most recent sources via CVS: The latest source code, as well as various older versions, are maintained in a publically readable CVS source code repository. Accessing it is simple, and if you plan to be an active developer, there is no better way of getting the source. The CVS tree is not publically writable; once you have patches, you should submit them to the gnucash-patches@gnucash.org mailing list. Documentation changes can be sent to the same place. If you are new to CVS, you may want to take a moment and visit the Concurrent Versions System Home Page, and in particular, the documentation page. CVS allows multiple users to modify the source code for GnuCash, each without stepping on the toes (and changes) made by others. If CVS seems at first overwhelming, don't let it be so: its quite easy to learn and use. To access the CVS tree, first, login, as so:
The password is "guest" ; after entering the password, you will be immediately returned to the command prompt. You can now use other CVS commands to view the source. To get a copy of the latest/beta development version (which is currently version 1.9.x), do a
Building GnuCash: A complete set of instructions for building GnuCash from source can be found in the README file in the top-level directory. For the impatient, the following instructions might help: Start with a distributed binary version of GnuCash, in order to get dependencies resolved. For example, Redhat 8.0 provides gnome-desktop-devel-2.0.6-4.i386.rpm, but GnuCash does not currently support gnome2 (as of January 2003). To find a path through the "dependencies hell" this leads to, you could use the following procedure:
If any of these steps don't make sense to you, you probably need more background material. Start with the README file in the source tree. Note that the GnuCash source code is converted to LXR hyperlinked web pages daily. However, you may find browsing with ctags in your own file system to be a bit speedier. Getting Older Versions of GnuCash out of CVS: Older versions and branches can be accessed with tags. The branch containing the latest version of the stable gnucash-1.6.x code is marked with the tag gnucash-1-6-branch . Thus, to check out the latest in the the gnucash-1.6.x series, do the following:
Released versions are tagged with the number of the release. Thus, the tag gnucash-1-6-0 will get you a copy of the source as it was for version 1.6.0. If you are a developer, you should probably be working either in the head branch (HEAD) on the latest beta/development code, or in the gnucash-1-6-branch, squashing any remaining bugs in the current stable version. Other tags of (mostly historical) interest are:
In order to speed up the performance of CVS, some of the older tags
(stuff older than mid-year 2000, mostly; and some newer stuff) and
branches have been removed from the mainline CVS tree. To those who
are interested in doing historical mining of the CVS tree as it used
to be, you can supply an older branch tag to the following repository:
Getting the most recent sources via FTP: If you don't like to bother with CVS you can download recent snapshots of the CVS tree from one of the FTP sites below. Note, however, that if you wish to contribute patches and updates to GnuCash, it is strongly recommended that you learn and use CVS. We encourage this because the snapshots can sometimes get a bit dated, and you just might be fixing a bug that's already fixed. http://www.linas.org/pub/gnucash/gnucash/sources/ http://gnucash.planetmirror.com/pub/gnucash/sources/ |
| Copyright © 2001,2002,2003 The GnuCash Project | ||
| Server & email outage reports to: linas@linas.org | Validate | |