GNOME Bugzilla – Bug 116516
./configure should check `gettext`
Last modified: 2007-11-08 15:53:56 UTC
People who don't have gettext installed get cong-primary-window.c:382: `gettext' undeclared compile error. A workaround is installing gettext. IMHO ./configure should check for gettext. See http://lists.copyleft.no/pipermail/conglomerate/2003-June/000127.html for background information.
Have spend some time on it. Now there is checking for bonobo and bonoboui.
In "./configure.in" are lots of 'gettext' reference. Rightnow I have no clue how to check for 'gettext'. I have to find a list of "build essentials".
Configure script (of 0.5.4 at least) is checking for gettext: checking for LC_MESSAGES... yes checking libintl.h usability... yes checking libintl.h presence... yes checking for libintl.h... yes checking for dgettext in libc... no checking for bindtextdomain in -lintl... yes checking for dgettext in -lintl... yes checking for bind_textdomain_codeset... yes checking for msgfmt... /usr/local/bin/msgfmt checking for dcgettext... no checking for gmsgfmt... /usr/local/bin/msgfmt checking for xgettext... /usr/local/bin/xgettext checking for catalogs to be installed... es ru The problem IMHO is that sources can't handle situation when configure does not find gettext. All gettext related calls should be wrapped in #ifdef HAVE_GETTEXT
At http://www.nl.debian.org/doc/packaging-manuals/build-essential are libc6-dev, gcc, g++, make and dpkg-dev. The list essential packages is: base-files base-passwd bash bsdutils coreutils debianutils diff dpkg e2fsprogs findutils grep gzip hostname login mount ncurses-base ncurses-bin perl-base sed sysvinit tar util-linux. None of them is 'gettext'. In doc/devel/CompileIssues is now a hint to install gettext.
Has any one succes with #ifdef HAVE_GETTEXT ?
From bug 128840 : "gettextize -f" --- Please use AM_GNU_GETTEXT([external]) in order to cause autoconfiguration to look for an external libintl. Please create po/Makevars from the template in po/Makevars.template. You can then remove po/Makevars.template. Please run 'aclocal -I m4' to regenerate the aclocal.m4 file. You need aclocal from GNU automake 1.5 (or newer) to do this. Then run 'autoconf' to regenerate the configure file. You might also want to copy the convenience header file gettext.h from the /usr/share/gettext directory into your package. It is a wrapper around <libintl.h> that implements the configure --disable-nls option. Press Return to acknowledge the previous four paragraphs. --- Summary: our build system could be improved.
I guess we can close this one, once the bug belongs to intltool and it has been fixed last week. *** This bug has been marked as a duplicate of 490845 ***