Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Double-entry accounting system with a command-line reporting interface

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
data @ e4eb5c2
scripts
tests
.gitignore
.gitmodules
LICENSE
Makefile.am
NEWS
README
TODO
acprep
amount.cc
amount.h
amounts.cc
autogen.sh
balance.cc
balance.h
binary.cc
binary.h
config.cc
config.h
configure.in
csv.cc
csv.h
datetime.cc
datetime.h
debug.cc
debug.h
derive.cc
derive.h
emacs.cc
emacs.h
error.h
fdstream.hpp
format.cc
format.h
gnucash.cc
gnucash.h
journal.cc
journal.h
ledger.el
ledger.h
ledger.texi
ledger.vim
main.cc
mask.cc
mask.h
ofx.cc
ofx.h
option.cc
option.h
parser.cc
parser.h
qif.cc
qif.h
quotes.cc
quotes.h
reconcile.cc
reconcile.h
report.cc
report.h
sample.dat
setup.py
startup.cc
test.py
textual.cc
textual.h
timeclock.el
timing.h
util.h
valexpr.cc
valexpr.h
value.cc
value.h
walk.cc
walk.h
xml.cc
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:

    http://groups.google.com/group/ledger-cli

You can also find help at the #ledger channel on the IRC server
irc.freenode.net.
Something went wrong with that request. Please try again.