public
Description: Double-entry accounting system with a command-line reporting interface
Homepage: http://www.newartisans.com/software/ledger.html
Clone URL: git://github.com/jwiegley/ledger.git
ledger /
name age message
file LICENSE Loading commit data...
file Makefile.am
file NEWS
file README
file acprep
file amount.cc
file amount.h
file amounts.cc Sat Apr 12 23:41:28 -0700 2008 (read_binary_journal): Fixed a tiny memory leak... [jwiegley]
file balance.cc
file balance.h
file binary.cc
file binary.h
file config.cc Sat Apr 12 23:41:33 -0700 2008 Made separate modules for the csv command, sinc... [jwiegley]
file config.h
file configure.in
file csv.cc Sat Apr 12 23:41:33 -0700 2008 Made separate modules for the csv command, sinc... [jwiegley]
file csv.h
file datetime.cc
file datetime.h
file debug.cc
file debug.h
file derive.cc
file derive.h Sat Apr 12 23:40:47 -0700 2008 updated to version 2.0 [jwiegley]
file emacs.cc
file emacs.h
file error.h
file fdstream.hpp
file format.cc
file format.h
file gnucash.cc
file gnucash.h Sat Apr 12 23:41:23 -0700 2008 Made several changes to the parsing infrastruct... [jwiegley]
file journal.cc
file journal.h
file ledger.el
file ledger.h
file ledger.texi
file ledger.vim
file main.cc
file mask.cc
file mask.h
file ofx.cc
file ofx.h Sat Apr 12 23:41:23 -0700 2008 Made several changes to the parsing infrastruct... [jwiegley]
file option.cc
file option.h
file parser.cc
file parser.h
file qif.cc
file qif.h Sat Apr 12 23:41:23 -0700 2008 Made several changes to the parsing infrastruct... [jwiegley]
file quotes.cc Sat Apr 12 23:41:32 -0700 2008 Reworked the way date/times are handled. [jwiegley]
file quotes.h
file reconcile.cc
file reconcile.h
file report.cc
file report.h Sat Apr 12 23:41:32 -0700 2008 Reworked the way date/times are handled. [jwiegley]
file sample.dat Sat Apr 12 23:40:47 -0700 2008 updated to version 2.0 [jwiegley]
directory scripts/
file setup.py
file startup.cc Sat Apr 12 23:41:29 -0700 2008 Added a DATETIME value type. [jwiegley]
file test.py
directory tests/
file textual.cc
file textual.h
file timeclock.el
file timing.h
file util.h
file valexpr.cc
file valexpr.h
file value.cc
file value.h
file walk.cc
file walk.h
file xml.cc
file xml.h
README
        Welcome to Ledger

     the command-line accounting program

Introduction
============

Ledger is an accounting program which is invoked from the command-line
using a textual ledger file.  To start using Ledger, you will need to
create such a file containing your financial transactions.  A sample
has been provided in the file "sample.dat".  See the documentation
(ledger.pdf, or ledger.info) for full documentation on creating a
ledger file and using Ledger to generate reports.

Once you have such a file -- you might call it "ledger.dat" -- you can
start looking at balances and account registers using commands like
the following:

  ledger -f ledger.dat balance assets:checking
  ledger -f ledger.dat register expenses:food

This assumes, of course, that like the sample file you use account
names such as "Assets:Checking" and "Expenses:Food".  If you use other
account names, you will need to vary the reporting commands you use
accordingly.


Building
========

To build Ledger, you will need a fairly modern C++ compiler (gcc 2.95
will not work), and at least these two libraries installed:

    gmp        GNU multi-precision library
    pcre       Perl regular expression library

(On some GNU/Linux systems, the packages you need to install are
called "gmp-dev" and "pcre-dev").

If you wish to read Gnucash data files, you will also need two XML
libraries, which may or may not be available in a single package (it
depends on your distribution):

    libexpat, or libxmlparse and libxmltok

Once you have determined where the headers and libraries for the above
packages are installed, run the script "configure", passing those
paths.  If you installed everything under /usr/local, you can probably
just type "./configure".  Otherwise, do this:

    ./configure CPPFLAGS=-I<INCLUDE-PATH>  LDFLAGS=-L<LIBRARY-PATH>

If you need to specify multiple include or library paths, then do
this:

    ./configure CPPFLAGS="-I<PATH1> -I<PATH2>"  LDFLAGS="-L<PATH1> -L<PATH2>"

Once configure is done running, just type:

    make install


Mailing List and IRC
====================

If you need help on how to use Ledger, or run into problems, you can
join the Ledger mailing list at the following Web address:

    https://lists.sourceforge.net/lists/listinfo/ledger-discuss

You can also find help at the #ledger channel on the IRC server
irc.freenode.net.