109 Apr 2011 - for t4k_common 0.1.1
2
3t4kcommon - library of code shared by tuxmath, tuxtype, and
4possibly other tux4kids apps in the future.
5
6Git repository: git://git.debian.org/git/tux4kids/t4kcommon.git
7
8Required libraries:
9	SDL
10	SDL_mixer
11	SDL_image
12	SDL_Pango (preferred) or SDL_ttf
13	SDL_net (optional)
14	rsvg2 (optional)
15	cairo (optional)
16	png
17	xml2
18	m (i.e. math libary)
19
20
21## To build and install from autotools-created tarball
22## (e.g. t4kcommon-0.1.0.tar.gz):
23
24tar xzf t4kcommon-0.1.0.tar.gz
25cd t4kcommon-0.1.0.tar.gz
26./configure
27make
28sudo make install
29
30(NOTE - it should also be possible to build with cmake from this tarball).
31
32## To build and install from git repository using GNU Autotools:
33## (requires Autoconf; Automake; libtool; gettext >= 0.18)
34## (from top-level directory, assumes use of separate build dir)
35
36mkdir build
37cd build
38autoreconf -if ..
39../configure
40make
41sudo make install
42
43
44## To build and install from git repository using CMake:
45## (from top-level directory, assumes use of separate build_cmake dir)
46
47mkdir build_cmake
48cd build_cmake
49cmake ..
50make
51sudo make install
52
53## NOTE FOR DEVELOPERS: The Autotools build is better tested and maintained
54than the CMake build, although they are intended to be equivalent.  If subtle
55problems appear when working on t4k_common or TuxMath with CMake, first see if
56the same issue occurs when building with Autotools.  If you are a CMake maven,
57assistance with these difficulties would be greatly appreciated.
58
59Also, it is highly recommended that you build from a separate build/ directory
60as illustrated above, to keep the source directory less cluttered. This is
61particularly important if you are testing both cmake and autotools builds, as
62they will create slightly different files that will cause subtle build
63problems.  Using e.g. "build/" and "build_cmake/" keeps them properly isolated.
64
65## IMPORTANT - after any of above, you may need to run ldconfig to update the
66paths searched by the linker.  From what I can tell, libtool is supposed to do
67this when you run "sudo make install", but I and others have encountered issues
68with this.  As a result, when you try to build and run e.g.  tuxmath, you may
69get errors saying that the library was not found. By default, t4k_common will
70be installed under /usr/local/lib.  At least on Debian-based systems as of this
71writing, /usr/local/lib is not in the linker's default path, but can be added
72to it simply by running "sudo ldconfig" with no arguments.  This only has to be
73done once, no matter how many times t4k_common is installed or uninstalled.
74
75If you install t4k_common to a non-standard location, you may need to run
76ldconfig to tell the linker about it.  I think the "right" way is probably to
77create an entry under /etc/ld.so.conf.d, then re-run "sudo ldconfig".  Or, you
78could just run "sudo lconfig -n WHEREVER_YOU_PUT_THE_LIB", See "man ldconfig"
79for further details.
80
81Again, none of this is *supposed* to be necessary - it should get taken care of
82automatically with "sudo make install".
83