110 lines
4.1 KiB
Text
110 lines
4.1 KiB
Text
|
|
Hello, and welcome to the Ledger source code!
|
|
|
|
If you're reading this file, you have in your hands the Bleeding Edge.
|
|
This may very well *NOT* be what you want, since it's not guaranteed to
|
|
be in a functionally complete state. It's under active development, and
|
|
may change in any way at any time.
|
|
|
|
What you may prefer is the current stable release, or the current beta
|
|
branch. At this moment, you can get there by one of two commands:
|
|
|
|
BETA: git checkout -b v2.6.1b origin/v2.6.1b
|
|
|
|
The BETA is what I prefer people use, since I still have a change to fix
|
|
major bugs that you find. Just log them in the track against 2.6.1 and
|
|
they'll become a part of my work list.
|
|
|
|
RELEASE: git checkout v2.6.0.90
|
|
|
|
This is the same release code that you can download via tarball from the
|
|
home page. It has some serious issues dealing with date/time handling,
|
|
although at least its major flaws are mostly known by now.
|
|
|
|
You can jump over to the current active development at any time by using
|
|
this command:
|
|
|
|
DEVEL: git checkout master
|
|
|
|
There are also several topic branches which contain experimental
|
|
features, although none of these are guaranteed even to compile. Best
|
|
to chat with me on IRC or via the mailing list before going too much
|
|
further with those.
|
|
|
|
------------------------------------------------------------------------
|
|
|
|
Now, if you wish to proceed in this venture, you'll need a few
|
|
dependencies:
|
|
|
|
- PCRE 7.7 -- if you're building BETA or RELEASE
|
|
|
|
- Boost 1.35 -- if you're building DEVEL
|
|
- CppUnit 1.12.1 -- if you're building DEVEL
|
|
|
|
- Optionally, Python 2.4 or higher
|
|
- Optionally, libexpat or libxml2
|
|
- Optionally, libofx
|
|
|
|
If you build stuff using MacPorts, as I do, here is what you would run:
|
|
|
|
port install boost +complete+python25
|
|
port install cppunit expat libofx
|
|
|
|
Or, for the convenience of fellow developers on the master (DEVEL)
|
|
branch, you may download some of these dependencies quite easily right
|
|
here and now. Just run this command:
|
|
|
|
git submodule update --init
|
|
|
|
You'll now have a few extra source trees in lib/. There's even a
|
|
Makefile there, which will build and install Boost and CppUnit into the
|
|
appropriate places in /usr/local/stow.
|
|
|
|
------------------------------------------------------------------------
|
|
|
|
The next step is preparing your environment for building. While you can
|
|
just use 'autoreconf -fi', I've prepared a script that does a lot of the
|
|
footwork for you:
|
|
|
|
./acprep
|
|
|
|
If you want to run with complete debugging on, as I do, use this:
|
|
|
|
./acprep --devel
|
|
|
|
Please read the contents of 'acprep' in this case, especially the
|
|
section which documents the --devel option.
|
|
|
|
------------------------------------------------------------------------
|
|
|
|
Once you have the dependencies installed and the source prepared for
|
|
building, just run 'make'. If you have CppUnit installed, I prefer that
|
|
you always run 'make fullcheck', as this will verify Ledger against the
|
|
unit tests, the Python unit tests (if applicable), and the regression
|
|
tests, for your platform.
|
|
|
|
If you have extra CPU cycles to burn, try even 'make distcheck', which
|
|
provides the most thorough shakedown of a healthy source tree.
|
|
|
|
------------------------------------------------------------------------
|
|
|
|
Now that you're up and running, here are a few resources to keep in
|
|
mind:
|
|
|
|
Home page http://www.newartisans.com/software/ledger.html
|
|
|
|
IRC channel #ledger on irc.freenode.net
|
|
Mailing List / Forum http://groups.google.com/group/ledger-cli
|
|
Issue Tracker http://trac.newartisans.com/ledger
|
|
GitHub project page http://github.com/jwiegley/ledger/tree/master
|
|
Buildbot display http://www.newartisans.com:9090
|
|
Ohloh code analysis http://www.ohloh.net/projects/ledger
|
|
|
|
If you have coding ideas you want to share, the best way is either to
|
|
e-mail me a patch (I prefer ttachments over pasted text), or to get an
|
|
account on GitHub. Once you do, fork the Ledger project, hack as much
|
|
as you like, then send me a message via GitHub asking me to check out
|
|
your repository. I'm only too happy to do so for anyone who takes time
|
|
out of their schedule to help the Ledger project.
|
|
|
|
John
|