There are some works which are required for using GNU
in one of your package. These works have some kind of generality
that escape the point by point descriptions used in the remainder
of this chapter. So, we describe them here.
gettextizeyou should install some other packages first. Ensure that recent versions of GNU
m4, GNU Autoconf and GNU
gettextare already installed at your site, and if not, proceed to do this first. If you get to install these things, beware that GNU
m4must be fully installed before GNU Autoconf is even configured.
To further ease the task of a package maintainer the
package was designed and implemented. GNU
gettext now uses this
tool and the Makefiles in the intl/ and po/
therefore know about all the goals necessary for using
and libintl in one project.
Those four packages are only needed by you, as a maintainer; the
installers of your own package and end users do not really need any of
m4, GNU Autoconf, GNU
gettext, or GNU
for successfully installing and running your package, with messages
properly translated. But this is not completely true if you provide
internationalized shell scripts within your own package: GNU
gettext shall then be installed at the user site if the end users
want to see the translation of shell script messages.
It is worth adding here a few words about how the maintainer should ideally behave with PO files submissions. As a maintainer, your role is to authenticate the origin of the submission as being the representative of the appropriate translating teams of the Translation Project (forward the submission to firstname.lastname@example.org in case of doubt), to ensure that the PO file format is not severely broken and does not prevent successful installation, and for the rest, to merely put these PO files in po/ for distribution.
As a maintainer, you do not have to take on your shoulders the responsibility of checking if the translations are adequate or complete, and should avoid diving into linguistic matters. Translation teams drive themselves and are fully responsible of their linguistic choices for the Translation Project. Keep in mind that translator teams are not driven by maintainers. You can help by carefully redirecting all communications and reports from users about linguistic matters to the appropriate translation team, or explain users how to reach or join their team. The simplest might be to send them the ABOUT-NLS file.
Maintainers should never ever apply PO file bug reports themselves, short-cutting translation teams. If some translator has difficulty to get some of her points through her team, it should not be an option for her to directly negotiate translations with maintainers. Teams ought to settle their problems themselves, if any. If you, as a maintainer, ever think there is a real problem with a team, please never try to solve a team’s problem on your own.