Added libtool to dependencies documentation
[barry/pauldeden.git] / doc / www / dependencies.php
blob1b30d9ab44e0b2887e4c243fefd551579a3bc33f
1 <? createHeader("barry - Software dependencies"); ?>
3 <? include ("barry.inc"); ?>
5 <div class="subHeader">System Specific</div>
7 <p>Fedora systems:
8 <ul>
9 <li><b>ConsoleKit</b> - required for accessing the
10 Blackberry without root privileges.</li>
11 </ul>
12 </p>
14 <p>Debian systems:
15 <ul>
16 <li><b>fakeroot</b> - optional program to assist building your own
17 Debian binary packages without root privileges</li>
18 </ul>
19 </p>
21 <p>OpenBSD systems:
22 <ul>
23 <li><b>Uberry</b> - the uberry kernel module conflicts with the ugen
24 interface that libusb uses to talk to the device. To work
25 around this, you will need to boot your kernel with "boot -c"
26 and disable the uberry module. Suggestions for better ways
27 to work around this conflict are welcome.</li>
28 </ul>
29 </p>
31 <div class="subHeader">Master List of Dependencies</div>
33 <p>The following list contains all software that Barry depends on, and
34 the reason for it. Some are only needed for building the source, and
35 some are only needed for building CVS.
37 <ul>
38 <li><b>C and C++ compilers</b> - 4.1.x or higher, for the tr1 includes (source build)</li>
39 <li><b>pkg-config</b> (source build: so configure can autodetect library locations) </li>
40 <li><b>libusb, stable (0.1.x)</b> - found at <a href="http://libusb.sourceforge.net">http://libusb.sourceforge.net/</a> </li>
41 <li><b>pthread</b>
42 <li><b>boost</b> version 1.33 or higher (optional, needed for the serialization library, which you need if you want to save downloads for later uploads to the device, using btool) <a href="http://www.boost.org/">http://www.boost.org</a></li>
43 <li><b>automake</b> version 1.9 (CVS builds only) </li>
44 <li><b>autoconf</b> version 2.61 (CVS builds only) </li>
45 <li><b>libtool</b> version 1.5.22 (CVS builds only) </li>
46 <li><b>doxygen</b> suggested version 1.4.5, only for building API documentation</li>
47 <li><b>gtkmm, glademm, glibmm</b> C++ versions of the GTK libraries (needed for the barrybackup GUI)</li>
48 <li><b>libtar</b> (barrybackup GUI) </li>
49 <li><b>zlib</b> (barrybackup GUI) </li>
50 <li><b>libopensync</b> version 0.22 <i>only</i> (needed for syncing) </li>
51 <li><b>sqlite, glib2, libxml2</b> (needed for syncing, required by OpenSync) </li>
52 </ul>
53 </p>
55 <div class="subHeader">The Case of the Broken libtar</div>
57 <p>Well meaning people, in efforts to port the libtar examples to 64-bit
58 systems have introduced a bug that causes libtar to mismatch standard
59 read() and write() function call prototypes.</p>
61 <p>This bug has been seen in the Mandriva, ArchLinux, and Gentoo distros.
62 Depending on your system, and how up to date it is, it may already have been
63 fixed.</p>
65 <p>The curious can read more about this bug
66 <a href="http://sourceforge.net/mailarchive/message.php?msg_id=20070803200729.GA7068%40foursquare.net">here</a> and
67 <a href="http://sourceforge.net/mailarchive/message.php?msg_name=20080417204336.GA15423%40foursquare.net">here</a>.</p>
69 <p>Of course, you probably don't want to read the intricate details of
70 distro bugs. You just want it to work! For such systems, I usually
71 grab the libtar source RPM package from
72 <a href="ftp://ftp.nrc.ca/pub/systems/linux/redhat/fedora/linux/releases/8/Everything/source/SRPMS/libtar-1.2.11-9.fc8.src.rpm">here</a> and then run:
73 <pre>
74 rpm -i libtar-1.2.11-9.fc8.src.rpm
75 (become root)
76 cd /usr/src/packages/SPECS
77 rpmbuild -ba libtar.spec
78 rpm -i ../RPMS/*/libtar*rpm
79 </pre>
80 </p>
83 <div class="subHeader">Dependency Packages for Common Distros</div>
85 <p>The following is a list of packages you'll need to install to build Barry
86 from source, if you are using one of the below common distributions. Other
87 distributions should have similar package names.
89 <ul>
91 <p><b>Fedora 5 and 6:</b></p>
92 <p>Use the yum package manager to install the following:
93 <ul>
94 <li> pkgconfig </li>
95 <li> libusb-devel </li>
96 <li> boost-devel (optional) </li>
97 <li> libtar (libtar-devel on Fedora 6) </li>
98 <li> gtkmm24-devel </li>
99 <li> glibmm24-devel </li>
100 <li> libglademm24-devel </li>
101 <li> zlib-devel </li>
102 </ul>
104 <p><b>Debian stable:</b></p>
105 <p>Use the apt-get package manager to install the following:
106 <ul>
107 <li> pkg-config </li>
108 <li> libusb-dev </li>
109 <li> libssl-dev </li>
110 <li> libboost-serialization-dev </li>
111 <li> libtar-dev </li>
112 <li> libgtkmm-2.4-dev </li>
113 <li> libglibmm-2.4-dev </li>
114 <li> libglademm-2.4-dev </li>
115 <li> zlib1g-dev </li>
116 </ul>
118 </ul>