gnucash 2.2.1 problems (and solutions)

Kastus Shchuka macports at tprfct.net
Mon Oct 22 10:25:21 PDT 2007


After gnucash on my other system running ubuntu feisty was upgraded  
to 2.2.1 I decided to upgrade gnucash on the iBook. My previous  
attempt to go from 2.0.5 to 2.2.0 was unsuccessful. Not in the sense  
that I was unable to build it but 2.2.0 was rather unusable being   
tooooo slow on the iBook and data format of 2.2.0 was not backward  
compatible with 2.0.5.

So, I ran "sudo port selfupdate" and then looked at gnucash  
dependencies.

"port info gnucash" reported the following:

Build Dependencies: libtool
Library Dependencies: p5-xml-parser, glib2, gconf, slib, popt,  
libgnomeui, libgnomeprintui, libgtkhtml3, libgsf, goffice03,  
aqbanking, libofx, p5-finance-quote, gnucash-docs, guile16, slib-guile16
Runtime Dependencies: evince

I checked outdated ports and rather than upgrading gnucash directly I  
decided to upgrade its dependencies first.

First bump on the road was goffice03. I remembered reading a post in  
this list about problems with building gnucash against the latest  
goffice and introduction of a new port goffice03 as a result. I had  
goffice at 0.3.8 already installed, so seeing this message:

Error: Target org.macports.activate returned: Image error: /opt/local/ 
include/libgoffice-0.3/goffice/app/error-info.h is being used by the  
active goffice port.  Please deactivate this port first, or use the - 
f flag to force the activation.

I just followed the advise, deactivated goffice and activated  
goffice03 manually.

Next was perl modules overwriting files owned by perl5.8 port.

Running "sudo port upgrade libgnomeui" I got these:

--->  Staging p5-pathtools into destroot
You must install or activate this package with '-f' (force) as it  
needs to overwrite files installed by the perl5.8 port

--->  Staging p5-getopt-long into destroot
You must install or activate this package with '-f' (force) as it  
needs to overwrite files installed by the perl5.8 port

I forced activation of p5-pathtools and p5-getopt-long and proceeded  
further.

"sudo port upgrade libgnomeprintui" brought up  some other perl modules:

--->  Activating p5-test-harness 2.64_1
Error: Target org.macports.activate returned: Image error: /opt/local/ 
bin/prove is being used by the active perl5.8 port.  Please  
deactivate this port first, or use the -f flag to force the activation.

I forced activation of p5-test-harness and also p5-test-simple.

At this point I decided that my dependencies were in good shape and  
issued "sudo port upgrade gnucash". I wish it were that simple. gnome- 
desktop failed to build:

--->  Building gnome-desktop with target all
Error: Target org.macports.build returned: shell command " cd "/opt/ 
local/var/macports/build/ 
_opt_local_var_macports_sources_rsync.macports.org_release_ports_gnome_g 
nome-desktop/work/gnome-desktop-2.20.0" && make all " returned error 2
Command output: xsltproc -o fdl-oc.omf --stringparam db2omf.basename  
fdl --stringparam db2omf.format 'docbook' --stringparam db2omf.dtd  
"-//OASIS//DTD DocBook XML V4.1.2//EN" --stringparam db2omf.lang oc -- 
stringparam db2omf.omf_dir "/opt/local/share/omf" --stringparam  
db2omf.help_dir "/opt/local/share/gnome/help" --stringparam  
db2omf.omf_in "/opt/local/var/macports/build/ 
_opt_local_var_macports_sources_rsync.macports.org_release_ports_gnome_g 
nome-desktop/work/gnome-desktop-2.20.0/desktop-docs/fdl/fdl.omf.in"   
`/opt/local/bin/pkg-config --variable db2omf gnome-doc-utils` oc/ 
fdl.xml || { rm -f "fdl-oc.omf"; exit 1; }
xsltproc -o fdl-sv.omf --stringparam db2omf.basename fdl -- 
stringparam db2omf.format 'docbook' --stringparam db2omf.dtd "-// 
OASIS//DTD DocBook XML V4.1.2//EN" --stringparam db2omf.lang sv -- 
stringparam db2omf.omf_dir "/opt/local/share/omf" --stringparam  
db2omf.help_dir "/opt/local/share/gnome/help" --stringparam  
db2omf.omf_in "/opt/local/var/macports/build/ 
_opt_local_var_macports_sources_rsync.macports.org_release_ports_gnome_g 
nome-desktop/work/gnome-desktop-2.20.0/desktop-docs/fdl/fdl.omf.in"   
`/opt/local/bin/pkg-config --variable db2omf gnome-doc-utils` sv/ 
fdl.xml || { rm -f "fdl-sv.omf"; exit 1; }
xsltproc -o fdl-uk.omf --stringparam db2omf.basename fdl -- 
stringparam db2omf.format 'docbook' --stringparam db2omf.dtd "-// 
OASIS//DTD DocBook XML V4.1.2//EN" --stringparam db2omf.lang uk -- 
stringparam db2omf.omf_dir "/opt/local/share/omf" --stringparam  
db2omf.help_dir "/opt/local/share/gnome/help" --stringparam  
db2omf.omf_in "/opt/local/var/macports/build/ 
_opt_local_var_macports_sources_rsync.macports.org_release_ports_gnome_g 
nome-desktop/work/gnome-desktop-2.20.0/desktop-docs/fdl/fdl.omf.in"   
`/opt/local/bin/pkg-config --variable db2omf gnome-doc-utils` uk/ 
fdl.xml || { rm -f "fdl-uk.omf"; exit 1; }
xsltproc -o fdl-vi.omf --stringparam db2omf.basename fdl -- 
stringparam db2omf.format 'docbook' --stringparam db2omf.dtd "-// 
OASIS//DTD DocBook XML V4.1.2//EN" --stringparam db2omf.lang vi -- 
stringparam db2omf.omf_dir "/opt/local/share/omf" --stringparam  
db2omf.help_dir "/opt/local/share/gnome/help" --stringparam  
db2omf.omf_in "/opt/local/var/macports/build/ 
_opt_local_var_macports_sources_rsync.macports.org_release_ports_gnome_g 
nome-desktop/work/gnome-desktop-2.20.0/desktop-docs/fdl/fdl.omf.in"   
`/opt/local/bin/pkg-config --variable db2omf gnome-doc-utils` vi/ 
fdl.xml || { rm -f "fdl-vi.omf"; exit 1; }
Making all in gpl
if ! test -d ar/; then mkdir ar/; fi
if [ -f "C/gpl.xml" ]; then d="../"; else d="/opt/local/var/macports/ 
build/ 
_opt_local_var_macports_sources_rsync.macports.org_release_ports_gnome_g 
nome-desktop/work/gnome-desktop-2.20.0/desktop-docs/gpl/"; fi; \
(cd ar/ && \
   `which xml2po` -e -p \
     "${d}ar/ar.po" \
     "${d}C/gpl.xml" > gpl.xml.tmp && \
     cp gpl.xml.tmp gpl.xml && rm -f gpl.xml.tmp)
Traceback (most recent call last):
   File "/opt/local/bin/xml2po", line 802, in <module>
     CurrentXmlMode = load_mode(default_mode)()
   File "/opt/local/bin/xml2po", line 674, in load_mode
     module = __import__(modename)
   File "/opt/local/share/xml2po/docbook.py", line 39, in <module>
     import md5
   File "/opt/local/lib/python2.5/md5.py", line 6, in <module>
     from hashlib import md5
   File "/opt/local/lib/python2.5/hashlib.py", line 133, in <module>
     md5 = __get_builtin_constructor('md5')
   File "/opt/local/lib/python2.5/hashlib.py", line 60, in  
__get_builtin_constructor
     import _md5
ImportError: No module named _md5

This one definitely looked like missing python module but where do I  
get it? "port search \*md5\*" returned nothing. "port search \*py25 
\*" gave some clue: py25-hashlib, although the contents of py25- 
hashlib did not look like _md5, it contains _hashlib.so only. Anyway,  
I decided to give it a shot, installed py25-hashlib and was able to  
install gnome-desktop after that.

I am not sure if this is a bug in gnome-desktop port and py25-hashlib  
should be listed as dependency of gnome-desktop.

After that gnucash built successfully.

Just wanted to share my experience if somebody else runs into the  
same problem.

Thanks, -Kastus


More information about the macports-users mailing list