102 lines
3.8 KiB
Text
102 lines
3.8 KiB
Text
|
|
===============================================================================
|
|
|
|
README FIRST!!!
|
|
|
|
To build this code after doing a Git clone, run:
|
|
|
|
$ ./acprep update
|
|
|
|
If you try to configure and build on your own, you are almost certainly going
|
|
to run into problems. In future, you can run this command again and again,
|
|
and it will keep you updated to the very latest version.
|
|
|
|
===============================================================================
|
|
|
|
NOTE FOR MAC OS X USERS
|
|
|
|
To build and install Ledger on the Mac requires several dependencies. If you
|
|
are a MacPorts user, you can install these dependencies very simply using:
|
|
|
|
$ ./acprep dependencies
|
|
|
|
Once this is done, I recommend building both debug and optimized versions of
|
|
Ledger, in a subdirectory of your source tree named 'build' (which acprep will
|
|
manage for you, you simply need to make it):
|
|
|
|
$ mkdir build
|
|
$ ./acprep opt make
|
|
$ ./acprep debug make
|
|
|
|
Now install the optimized version, but know that you have 'build/debug/ledger'
|
|
available for testing and more useful bug reports.
|
|
|
|
===============================================================================
|
|
|
|
F.A.Q.
|
|
|
|
----------------------------------------------------------------------
|
|
|
|
- Q: The build fails saying it can't find utf8.h
|
|
|
|
A: You didn't run ./acprep update.
|
|
|
|
----------------------------------------------------------------------
|
|
|
|
- Q: Configure fails saying it can't find boost_regex
|
|
|
|
A: Look in config.log and search for "boost_regex", then scroll down a bit
|
|
until you see the exact compile error. Usually it's failing because
|
|
your include directory is different from anything acprep is expecting to
|
|
see. It could also be failing because your Boost libraries have a
|
|
custom "suffix" on them.
|
|
|
|
Let's say your Boost was installed in ~/boost, and every library has the
|
|
suffix '-xgcc42'. This is what you would run:
|
|
|
|
CPPFLAGS=-I$HOME/boost acprep --boost=xgcc42 update
|
|
|
|
----------------------------------------------------------------------
|
|
|
|
- Q: Configure fails saying it can't find MPFR
|
|
|
|
A: You need MPFR version 2.4.0 or higher. This version does not come with
|
|
most Debian distributions, so you will need to build it.
|
|
|
|
----------------------------------------------------------------------
|
|
|
|
- Q: Something else fails, or Ledger crashes on startup
|
|
|
|
A: This, I am most interested in hearing about. Please e-mail me a copy of
|
|
config.log and your build log to <johnw@newartisans.com>. Also, if
|
|
Ledger is crashing, try running it under gdb like so:
|
|
|
|
$ gdb ledger
|
|
(gdb) run <ARGS TO LEDGER>
|
|
... runs till crash ...
|
|
(gdb) bt
|
|
|
|
Send me that backtrace output, and the output from "ledger --version".
|
|
|
|
----------------------------------------------------------------------
|
|
|
|
- Q: Whenever I try to use the Python support, I get a segfault
|
|
|
|
A: Make sure that the boost_python library you linked against is using the
|
|
exact same Python as the Ledger executable. In particular I see this
|
|
bug on OS X systems where boost_python is linked against the default
|
|
Python, while Ledger is linked against the version provided by MacPorts.
|
|
|
|
Solution: Use one or the other. If you prefer the system Python, run
|
|
"port deactivate -f python26", to get MacPorts' version out of the way.
|
|
You'll then need to delete the Ledger binary and run "make" to relink
|
|
it.
|
|
|
|
----------------------------------------------------------------------
|
|
|
|
- Q: When I run "make check", the Python unit tests always crash
|
|
|
|
A: This can happen for the same reason as above. It can also happen if you
|
|
have ICU support enabled. This is a bug I'm still trying to track down.
|
|
|
|
----------------------------------------------------------------------
|