Subject: bug#51259: Cannot build Guix from source (error messages about the translations)

From: Julien Lepiller <[email-masked]>
Date: Mon, 18 Oct 2021 08:57:34 -0400

I managed to reproduce the issue on fedora, in a broken pure environmert. In a pure environment, fedora gives error messages about software that doesn't exist, and asks if I want to install them. If I ^C at that point, I enter the environment, but some things are missing.

There are litteral ?? in manuals that don't use ascii, and this is especially visible in the korean manual. Po4a works fine in my experimentation, but it looks like the po parser or regular expression matching is broken at the POXREF phase, and everything is copied as literal ??.

Maybe setting LANG to a UTF-8 locale in the poxref rule would help? It didn't hix the issue in my case, but I think that's because I'm missing even more variables.

Le 18 octobre 2021 07:54:08 GMT-04:00, Tobias Geerinckx-Rice via Bug reports for GNU Guix <[email-masked]> a écrit :
>Leo Famulari 写道：
>> ./doc/guix.ko.texi:431: here is the previous definition as @node
>> ./doc/guix.ko.texi:2065: @node `??????' previously defined
>
>This seems to hint at a locale error, and indeed it was: when I 
>check out a fresh guix.git and build it in a recent ‘guix 
>environment guix’ on Guix System, I get the same error as you.
>
>When I repeat the exact same steps but first set
>
>   $ export LC_ALL=en_IE.utf8
>
>in the environment, the build goes swimmingly.
>
>I only ran each test once so it could be a coincidence, but I 
>doubt it.
>
>As for the actual error…
>
>> ./doc/guix.ko.texi:431: here is the previous definition as @node
>> ./doc/guix.ko.texi:2065: @node `??????' previously defined
>
>At the risk of being naive: could it simply be that the missing 
>locale turns the Korean UTF-8 into a literal ‘??????’, which of 
>course matches another mangled @node string of the same length?
>
>Kind regards,
>
>T G-R