summaryrefslogtreecommitdiff
path: root/README.textile
diff options
context:
space:
mode:
Diffstat (limited to 'README.textile')
-rw-r--r--README.textile162
1 files changed, 162 insertions, 0 deletions
diff --git a/README.textile b/README.textile
new file mode 100644
index 00000000..2a730746
--- /dev/null
+++ b/README.textile
@@ -0,0 +1,162 @@
+h1. Ledger: Command-Line Accounting
+
+Ledger is a powerful, double-entry accounting system that is accessed from the
+UNIX command-line. This may put off some users, since there is no flashy UI,
+but for those who want unparalleled reporting access to their data there are
+few alternatives.
+
+h2. For the Impatient
+
+I know, you just want to build and play. If you have all the dependencies
+installed (see below), then simply do this:
+
+<pre>
+git clone git://github.com/jwiegley/ledger.git
+cd ledger && ./acprep update # Update to the latest, configure, make
+</pre>
+
+Now try your first ledger command:
+
+<pre>
+./ledger -f doc/sample.dat reg
+</pre>
+
+h2. To the Rest
+
+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.
+The *BETA* is what I prefer people use, since I still have a chance to fix
+major bugs that you find. Just e-mail me, or post to the mailing list,
+they'll become a part of my work list.
+
+|*CURRENT*|@git checkout master@|
+|*BETA*|@git checkout -b maint origin/maint@|
+|*RELEASE*|@git checkout v2.6.1@|
+
+There are also several topic branches which contain experimental features,
+though none of these are guaranteed to compile. Best to chat with me on
+"IRC":irc//irc.freenode.net/ledger or via the
+"mailing list":http://groups.google.com/group/ledger-cli before going too
+much further with those.
+
+h2. Dependencies
+
+If you wish to proceed in this venture, you'll need a few dependencies. The
+easiest way to get them for your platform is to run:
+
+<pre>
+./acprep dependencies
+</pre>
+
+If that doesn't completely work, read on.
+
+h3. For building the current master branch
+
+|_.Library|_.Min.Ver.|_.When needed|
+|Boost|1.35||
+|GMP|4.2.2||
+|MPFR|2.4.0||
+|gettext|0.17|_optional_|
+|libedit|20090111-3.0|_optional_|
+|Python|2.4|_optional_|
+|cppunit|1.12.1|_optional_, for @make check@|
+|doxygen|1.5.7.1|_optional_, for @make docs@|
+|graphviz|2.20.3|_optional_, for @make docs@|
+|texinfo|4.13|_optional_, for @make docs@|
+|lcov|1.6|_optional_, for @make report@, used with @./acprep gcov@|
+|sloccount|2.26|_optional_, for @make sloc@|
+
+h3. For building the current @maint@ branch
+
+|_.Library|_.Min.Ver.|_.When needed|
+|GMP|4.2.2||
+|pcre|7.7||
+|libofx|0.8.3|_optional_|
+|expat|2.0.1|_optional_|
+|libxml2|2.7.2|_optional_|
+
+h3. MacPorts
+
+If you build stuff using MacPorts on OS X, as I do, here is what you would
+run:
+
+<pre>
+sudo port install -f automake autoconf libtool python26
+ libiconv +universal zlib +universal gmp +universal
+ mpfr +universal ncurses +universal ncursesw +universal
+ gettext +universal libedit +universal boost-jam
+ boost +st+python26+icu cppunit texlive doxygen graphviz
+ texinfo lcov sloccount
+</pre>
+
+You can even just install the current Ledger *RELEASE* directly:
+
+<pre>
+sudo port install ledger
+</pre>
+
+h3. Ubuntu
+
+If you're going to be build on Ubuntu, @sudo apt-get install ...@ the
+following packages (current as of Ubuntu Hardy):
+
+<pre>
+sudo apt-get install build-essential libtool autoconf automake \
+ zlib1g-dev libbz2-dev python-dev bjam cvs gettext libgmp3-dev \
+ libmpfr-dev libboost1.35-dev libboost-regex1.35-dev \
+ libboost-date-time1.35-dev libboost-filesystem1.35-dev \
+ libboost-python1.35-dev texinfo lcov sloccount
+</pre>
+
+Or, for Ubuntu Karmic:
+
+<pre>
+sudo apt-get install build-essential libtool autoconf automake \
+ texinfo python-dev zlib1g-dev libbz2-dev libgmp3-dev \
+ bjam gettext cvs libboost1.40-dev libboost-regex1.40-dev \
+ libboost-date-time1.40-dev libboost-filesystem1.40-dev \
+ libmpfr-dev
+</pre>
+
+h2. Building
+
+The next step is preparing your environment for building. While you can use
+@autogen.sh@, ./configure and make, I've prepared a script that does a lot more
+of the footwork for you:
+
+<pre>
+./acprep update
+# or, if you want to use the Boost libraries with suffix -mt, install in
+# $HOME/local and build with 2 processes in parallel
+./acprep update --boost=-mt -- --prefix=$HOME/local -j2
+</pre>
+
+Please read the contents of @config.log@ if the configure step fails. Also,
+see the @help@ command to @acprep@, which explains some of its many options.
+It's pretty much the only command I run for configuring, building and testing
+Ledger.
+
+You can run @make check@ to confirm the result, and @make install@ to install.
+
+If you have extra CPU cycles to burn, try @./acprep proof@, which provides the
+most thorough shakedown of a healthy source tree.
+
+h2. Resources
+
+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":http://www.newartisans.com/software/ledger.html|
+|IRC channel|"#ledger on irc.freenode.net":irc://irc.freenode.net/ledger|
+|Mailing List / Forum|"http://groups.google.com/group/ledger-cli":http://groups.google.com/group/ledger-cli|
+|GitHub project page|"http://github.com/jwiegley/ledger":http://github.com/jwiegley/ledger|
+|Buildbot status|"http://www.newartisans.com:9090":http://www.newartisans.com:9090|
+|Ohloh code analysis|"http://www.ohloh.net/projects/ledger":http://www.ohloh.net/projects/ledger|
+
+If you have ideas you'd like to share, the best way is either to e-mail me a
+patch (I prefer attachments over pasted text), or to get an account on GitHub.
+Once you do, fork the "Ledger project":http://github.com/jwiegley/ledger, hack
+as much as you like, then send me a pull request via GitHub.