bug-gnu-utils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: I am missing something, but don't know what


From: Roberto Bagnara
Subject: Re: I am missing something, but don't know what
Date: Tue, 03 Feb 2004 18:23:38 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040116

Bruno Haible wrote:
# Declare the version number of the Gettext infrastructure we are using.
AM_GNU_GETTEXT_VERSION

The last thing I did was to add `po' to SUBDIRS in the
top-level Makefile.am (we also use automake).


That should be all that's is needed. (OK, the AM_GNU_GETTEXT_VERSION should
be invoked with an argument, like 0.14.1, but this cannot be a problem
at this point.)

Fixed, thanks.

Of course something is missing, isn't it?
As a result of configure we end up with
`Makefile.in' in the builddir/po directory,
but who is supposed to create `Makefile' in
that directory?


The po/Makefile is created by config.status just after creating
po/Makefile.in. It's a special code inside the AM_PO_SUBDIRS
macros which implements this.

So here is the problem: config.status is creating only
po/Makefile.in but not Makefile.  Here is the relevant
output:

[...]
config.status: creating src/Makefile
config.status: creating src/version.hh
config.status: creating tests/Makefile
config.status: creating m4/Makefile
config.status: creating po/Makefile.in
config.status: creating doc/Makefile
config.status: creating doc/user-browse.doxyconf-latex
[...]

and in fact

$ ls -l po
total 16
-rw-rw-r--    1 roberto  roberto     12528 Feb  3 17:43 Makefile.in
$

If you end up with a po/Makefile.in but no po/Makefile, the likely
reason is that your 'configure' script is using a wrong version of the
AM_GNU_GETTEXT or AM_PO_SUBDIRS macro. I'd make sure that:
  - The package's m4/ directory contains the gettext.m4 and po.m4
    files that come from the right gettext version,

$ cd m4
$ diff gettext.m4 
/usr/local/distrib/gettext-0.14.1/gettext-runtime/m4/gettext.m4
$ diff po.m4 /usr/local/distrib/gettext-0.14.1/gettext-runtime/m4/po.m4

  - You have generated aclocal.m4 with the right -I argument pointing
    into this directory, (Attention: If you're using automake, take a look at
    the ACLOCAL_AMFLAGS variable.)

At the beginning of Makefile.am in the top srcdir there is

# Tell aclocal where to find `.m4' files.
ACLOCAL_AMFLAGS = -I m4

Moreover, judging from the trace files in autom4te.cache
it seems these are indeed the files that have been used.

  - You have generated 'configure' using this aclocal.m4.

I am pretty sure about that.


A sample program with all the automake/autoconf machinery is found in the
examples/hello-c/ directory that GNU gettext installs.

That works as expected.  However it is a bit strange.  Running ./autogen.sh
materialized in the m4 directory a version of po.m4 that begins with

# po.m4 serial 2 (gettext-0.13)

which is strange, because gettext 0.13 is not installed on my system
and running a `find / -name po.m4' yields only 3 identical po.m4
that begin with

# po.m4 serial 3 (gettext-0.14)

What can I do to investigate things further?
Thanks a lot,

    Roberto

--
Prof. Roberto Bagnara
Computer Science Group
Department of Mathematics, University of Parma, Italy
http://www.cs.unipr.it/~bagnara/
mailto:address@hidden




reply via email to

[Prev in Thread] Current Thread [Next in Thread]