Could someone update the dependencies list?

Derek Atkins derek at ihtfp.com
Sat May 29 08:25:59 EDT 2010


On Sat, May 29, 2010 3:31 am, Geert Janssens wrote:
> On Saturday 29 May 2010, John Ralls wrote:
>> On May 28, 2010, at 6:44 PM, Tao Wang wrote:
>> > Hi,
>> >
>> > I cannot find following packages requirements in 'configure.ac':
>> >
>> > libart2 (libart_lgpl)
>> > libgnomeprint
>> > libgsf
>> > libofx
>> > pango
>> > swig
>> >
>> > But they are the wiki/Dependencies, Does GnuCash still depend on these
>> > packages? or should we add them as requirement check in the
>> > 'configure.ac' file?
>>
>> libart_lgpl and pango are required to build current versions of gtk+,
>> but
>>  in the past there were ways to build it without them. It's probably
>>  redundant to have them in our dependency list, but I can't be sure.

These are probably indirect dependencies.  Unfortunately there's not a
good answer for solving this problem, especially when the direct
dependency does not always link in.   In this case we should depend on the
packager to have proper -devel package dependencies.  I.e., we should not
include a configure check for indirect dependencies.

>> swig is needed for integrating the C and Scheme (Guile) parts of
>> Gnucash.

Note that swig is only required when building from subversion, and there
*IS* a check in configure when you build from subversion.  When you build
from a tarball then you do not need swig, so it doesn't check for it.

>> libgnomeprint is deprecated and its functions have been absorbed by gtk+
>> in
>>  2.10, so it should be safe to delete it as a dependency.
>>
> Yes, I removed this dependency somewhere in the 2.3.x development cycle
> when I
> updated the gtk+ requirement to 2.10.
>
>> libofx is required for reading Microsoft Money and Quicken files.
>> libgsf is some sort of structured file interface, which Gnucash uses.

This is conditional on --enable-ofx.  There should already be a configure
test to make sure it's there.

>> A good way to work out what dependencies are used is to use ldd on the
>>  binaries. Remember to check dynamically-loaded bundles as well as
>>  executables and shared libraries, and to follow all dependencies.
>>
> On Windows, you can use the graphical tool dependency walker for this.
>
>> Regards,
>> John Ralls

-derek



More information about the gnucash-devel mailing list