GNOME Bugzilla – Bug 155482
Error compiling libbonobo from CVS using jhbuild
Last modified: 2004-12-22 21:47:04 UTC
Please describe the problem: Hi, I'm compiling CVS HEAD from scratch using jhbuild, and I get the following error message during the libbonobo section: *** Building libbonobo *** [9/108] make make all-recursive make[1]: Entering directory `/home/andy/cvs/gnome2/libbonobo' Making all in idl make[2]: Entering directory `/home/andy/cvs/gnome2/libbonobo/idl' make all-am make[3]: Entering directory `/home/andy/cvs/gnome2/libbonobo/idl' make[3]: Nothing to be done for `all-am'. make[3]: Leaving directory `/home/andy/cvs/gnome2/libbonobo/idl' make[2]: Leaving directory `/home/andy/cvs/gnome2/libbonobo/idl' Making all in bonobo-activation make[2]: Entering directory `/home/andy/cvs/gnome2/libbonobo/bonobo-activation' make all-am make[3]: Entering directory `/home/andy/cvs/gnome2/libbonobo/bonobo-activation' make[3]: Nothing to be done for `all-am'. make[3]: Leaving directory `/home/andy/cvs/gnome2/libbonobo/bonobo-activation' make[2]: Leaving directory `/home/andy/cvs/gnome2/libbonobo/bonobo-activation' Making all in bonobo make[2]: Entering directory `/home/andy/cvs/gnome2/libbonobo/bonobo' make all-am make[3]: Entering directory `/home/andy/cvs/gnome2/libbonobo/bonobo' make[3]: Nothing to be done for `all-am'. make[3]: Leaving directory `/home/andy/cvs/gnome2/libbonobo/bonobo' make[2]: Leaving directory `/home/andy/cvs/gnome2/libbonobo/bonobo' Making all in activation-server make[2]: Entering directory `/home/andy/cvs/gnome2/libbonobo/activation-server' test -f y.tab.h && mv -f y.tab.h activation-context-query-parser.h || touch activation-context-query-parser.h flex -t ./activation-context-query-lexer.l >activation-context-query-lexer.c test -f y.tab.c && mv -f y.tab.c activation-context-query-parser.c || touch activation-context-query-parser.c LC_ALL=C ../intltool-merge -o -u -c ../po/.intltool-merge-cache ../po Bonobo_CosNaming_NamingContext.server.in Bonobo_CosNaming_NamingContext.server Possible unintended interpolation of @INTLTOOL_ICONV in string at ../intltool-merge line 94. Global symbol "@INTLTOOL_ICONV" requires explicit package name at ../intltool-merge line 94. BEGIN not safe after errors--compilation aborted at ../intltool-merge line 250. make[2]: *** [Bonobo_CosNaming_NamingContext.server] Error 9 make[2]: Leaving directory `/home/andy/cvs/gnome2/libbonobo/activation-server' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/andy/cvs/gnome2/libbonobo' make: *** [all] Error 2 *** error during stage build of libbonobo: could not build module *** [9/108] Steps to reproduce: 1. jhbuild bootstrap 2. jhbuild Actual results: The error message reproduced above appears. Expected results: libbonobo should compile and jhbuild should continue to the next section. Does this happen every time? Yes Other information:
Seems that it is not related to libbonobo but rather to jhbuild or intltool. Could you provide versions of such components in your system.
Don't think it's blocker bug, it rarely reproduced.
(Sorry if I incorrectly marked this as a blocker - I thought that was the right thing to put because it is blocking me!) intltool-extract, intltool-merge, intltool-prepare and intltool-update in the libbonobo directory all report version number 0.31.2. jhbuild doesn't have a --version switch, and I can't see a version number in the source code, but the ChangeLog reports the last changes as happening on 2004-10-12. I ran jhbuild bootstrap first, so I think that the latest version should have been built then. Thanks for your help.
I've managed to get the build to get past this error in the libbonobo section by altering the file ~/cvs/gnome2/libbonobo/intltool-merge like so: Changed line 94 from: my $iconv = $ENV{"ICONV"} || $ENV{"INTLTOOL_ICONV"} || "@INTLTOOL_ICONV@"; to: my $iconv = $ENV{"ICONV"} || $ENV{"INTLTOOL_ICONV"}; but a) obviously, this is overwritten when intltool-merge is remade, and b) I get the same error in a later module I hope this helps diagnose the problem. At first guess it looks like the @INTLTOOL_ICONV@ should have been replaced with something at some stage of the build process, but automake etc. is all Greek to me!
It's generally a good idea to talk to the maintainers of the particular module, when that module does not build in jhbuild.
I can't reproduce, and I'm no intltool hacker (I don't speak perl).
Nickolay changed the product to jhbuild in comment number 1. I originally filed it against bonobo.
Re-filing under bonobo as advised.
This looks like an intltool problem; or at least, a problem with how we're using intltool - re-assigning to intltool for enlightenment :-) [ pass the bug to the left & the port to the right ].
This is definitely not isolated to libbonobo. I get it under several modules, and have written a short script that I _think_ fixes it for me by replacing the offending symbol with the text "iconv". Every time I get this error in jhbuild I go into the shell and run my script, and then continue the build. It continues and looks like it's working.
Created attachment 34238 [details] Script to replace lines containing INTLTOOL_ICONV with a prepared line containing "iconv". This is the script I have used. I have no idea why I replace the whole line instead of just the text itself, but it seems to work.
By the way, this bug still has a status of NEEDINFO. I am happy to provide any info I am asked for, but I don't believe anyone has asked me for any...
I still belive this is an intltool bug, not bonobo. We're just using the provided AC_PROG_INTLTOOL macro in configure.in. If the macro is not working correctly (some AC_SUBST failing maybe?), it's not bonobo's fault.
I agree with the above. The identical problem occurs in several other modules during the jhbuild run. (Sorry, I can't remember which modules, but will report when I go through the whole process again.)
The intltool.m4 that your aclocal is pulling in, doesn't match the version of intltool you are trying to build with. Please upgrade to the latest intltool in CVS and fix your ACLOCAL_FLAGS to not include the system aclocal directory in front of the jhbuild directory. You might just want to uninstall the system intltool package also. Please don't use the attached script.
Removing the system intltool package fixed the problem. Thanks for your help.