manpagez: man pages & more
info gettext
Home | html | info | man
[ << ] [ < ] [ Up ] [ > ] [ >> ]         [Top] [Contents] [Index] [ ? ]

13.4.13 ‘gettext.h’ in ‘lib/

Internationalization of packages, as provided by GNU gettext, is optional. It can be turned off in two situations:

A C preprocessor macro can be used to detect these two cases. Usually, when libintl.h was found and not explicitly disabled, the ENABLE_NLS macro will be defined to 1 in the autoconf generated configuration file (usually called ‘config.h’). In the two negative situations, however, this macro will not be defined, thus it will evaluate to 0 in C preprocessor expressions.

gettext.h’ is a convenience header file for conditional use of ‘<libintl.h>’, depending on the ENABLE_NLS macro. If ENABLE_NLS is set, it includes ‘<libintl.h>’; otherwise it defines no-op substitutes for the libintl.h functions. We recommend the use of "gettext.h" over direct use of ‘<libintl.h>’, so that portability to older systems is guaranteed and installers can turn off internationalization if they want to. In the C code, you will then write

#include "gettext.h"

instead of

#include <libintl.h>

The location of gettext.h is usually in a directory containing auxiliary include files. In many GNU packages, there is a directory ‘lib/’ containing helper functions; ‘gettext.h’ fits there. In other packages, it can go into the ‘src’ directory.

Do not install the gettext.h file in public locations. Every package that needs it should contain a copy of it on its own.


[ << ] [ < ] [ Up ] [ > ] [ >> ]         [Top] [Contents] [Index] [ ? ]

This document was generated on June 7, 2014 using texi2html 5.0.

© manpagez.com 2000-2024
Individual documents may contain additional copyright information.