1 <?
include ("barry.inc"); ?
>
3 <?
createHeader("barry - Software dependencies"); ?
>
5 <?
createSubHeader("System Specific"); ?
>
9 <li
><b
>ConsoleKit
</b
> - required
for accessing the
10 Blackberry without root privileges
.</li
>
16 <li
><b
>fakeroot
</b
> - optional program to assist building your own
17 Debian binary packages without root privileges
</li
>
18 <li
><b
>cdbs
</b
> and <b
>debhelper
</b
> - required to build binary
20 <li
><b
>apt
-utils
</b
> - optional
, if you wish to create a binary package
27 <li
><b
>Uberry
</b
> - the uberry kernel module conflicts with the ugen
28 interface that libusb uses to talk to the device
. To work
29 around this
, you will need to boot your kernel with
"boot -c"
30 and disable the uberry module
. Suggestions
for better ways
31 to work around this conflict are welcome
.</li
>
37 <li
><b
>gettext
</b
> - the
default gettext autoconf scripts
do not
38 always
do a very good job of detecting gettext
and libintl
39 libraries on the Mac
. If it cannot find libintl
, it will
40 automatically disable NLS support
. If this is important
41 to you
, add
--with
-libintl
-prefix
=/opt
/local
/ to the
42 configure command line when building from source
.</li
>
46 <?
createSubHeader("Master List of Dependencies"); ?
>
48 <p
>The following
list contains all software that Barry depends on
, the
49 minimal version required
, and the reason
for its dependency
.
50 Some dependencies are only needed
for building from source
, and
51 some are only needed
for building from git
.
53 <p
><b
>Note
:</b
> In the Barry source tree
, under maintainer
/depscripts
/ you will
54 find a number of distro
-specific scripts which contain the appropriate
55 apt
-get
or yum command lines to install all these dependencies
for you
.
56 Review the script closest to your system
. It may save you time
.
59 <li
><b
>git
</b
> - for retrieving source from repositories
</li
>
60 <li
><b
>C
and C++ compilers
</b
> - 4.1.x
or higher
, for the tr1
61 includes (source build
)</li
>
62 <li
><b
>ccache
</b
> - completely optional
, but very useful
if you
63 plan on compiling repeatedly
</li
>
64 <li
><b
>pkg
-config
</b
> - source build only
, so configure can
65 autodetect library locations
) </li
>
66 <li
><b
>libusb
</b
> - both versions
0.1.x
and 1.x are supported
and
67 autodetected by the configure script
. Found at
68 <a href
="http://www.libusb.org/">http
://www.libusb.org/</a></li>
70 <li
><b
>boost
</b
> - optional dependency
for serialization support
.
71 Use version
1.33 or higher
72 <a href
="http://www.boost.org/">http
://www.boost.org</a></li>
73 <li
><b
>automake
</b
> version
1.9 (git builds only
) </li
>
74 <li
><b
>autoconf
</b
> version
2.61 (git builds only
) </li
>
75 <li
><b
>autoconf
-archive
</b
></li
>
76 <li
><b
>libtool
</b
> version
1.5.22 (git builds only
) </li
>
77 <li
><b
>autopoint
</b
> on some systems
, this is a separate package
, yet
78 on others
, it is part of
gettext (git builds only
) </li
>
79 <li
><b
>doxygen
</b
> suggested version
1.5.6, only
for building API
81 <li
><b
>gtkmm
, glademm
, glibmm
</b
> - version
2.4 or compatible
- C++
82 versions of the GTK libraries
, which are needed
for the
84 <li
><b
>libtar
</b
> - needed
for libbarrybackup
, and therefore the
85 (barrybackup GUI
as well
</li
>
86 <li
><b
>zlib
</b
> - needed
for CRC32 checksums in library COD file
87 support
, and also used by the barrybackup GUI to compress
89 <li
><b
>libopensync
</b
> version
0.2x
or version
0.39 devel
</li
>
90 <li
><b
>sqlite
, glib2
, libxml2
</b
> - needed
for syncing
, required by
92 <li
><b
>libfuse
</b
> - version
2.5 or higher (optional
)</li
>
93 <li
><b
>libiconv
</b
> - needed
for international charset conversions
.
94 Most Linux distros have this
as part of libc
. If you are
95 using another OS such
as FreeBSD
, you
'll have to install
97 <li><b>libxml++</b> - version 2.6 for the Desktop</li>
98 <li><b>gettext</b> - needed for the iconv.m4 file, on some systems,
99 when building from git to generate configure</li>
100 <li><b>php5</b> - optional, needed for generating static HTML
101 documentation (git builds only) </li>
102 <li><b>rpmdevtools</b> and <b>rpm-build</b> - if building RPMs
104 <li><b>wxWidgets</b> - version 2.8, required by the Desktop GUI</li>
105 <li><b>libgcal</b> - version 0.9.6 or higher, if building the
107 <li><b>libSDL</b> - optional, needed by the bwatch program</li>
108 <li><b>evolution-data-server</b> and <b>libebook, libedata*</b>
109 libraries - needed by the OpenSync evolution plugin</li>
110 <li><b>gksu</b> or <b>beesu</b> or equivalent GUI sudo - needed by
111 the Desktop for modem functionality</li>
115 <? createSubHeader("The Case of the Broken libtar"); ?>
117 <p>Well meaning people, in efforts to port the libtar examples to 64-bit
118 systems have introduced a bug that causes libtar to mismatch standard
119 read() and write() function call prototypes.</p>
121 <p>This bug has been seen in the Mandriva, ArchLinux, and Gentoo distros.
122 Depending on your system, and how up to date it is, it may already have been
125 <p>The curious can read more about this bug
126 <a href="http://www.mail-archive.com/barry-devel@lists.sourceforge.net/msg00746.html">here</a> and
127 <a href="http://www.mail-archive.com/barry-devel@lists.sourceforge.net/msg00754.html">here</a>.</p>
129 <p>This bug has been fixed for a long time, or never existed, on distros
130 like Fedora or Debian, and you can probably grab sources from those
131 distros if you really need them. If you run into this problem and
132 require help to solve it, please email the <? createLink("contact",
136 <? createSubHeader("Dependency Packages for Common Distros"); ?>
138 <p>I used to maintain lists of packages for common distros here, but
139 it is much more useful to have a script that just works.
141 <p>In the <a href="http://repo.or.cz/w/barry.git/tree/HEAD:/maintainer/depscripts">Barry source tree</a>, under maintainer/depscripts/ you will
142 find a number of distro-specific scripts which contain the appropriate
143 apt-get or yum command lines to install all these dependencies for you.
144 Review the script closest to your system. It may save you time.