localedef - generate a locale environment
localedef [-cenvw] [-C compiler_options] [-L loader_options]
[-m method_file] [-f charmap_file] [-i locale_definition]
localedef sets up the language environment for the named locale.
localedef reads a locale definition file (see localedef(4) for a
detailed description) from standard input (default) or from
locale_definition file, creates a locale file with the same name as
specified for the locale_name parameter, and optionally installs this
locale in the appropriate directory. Installation of public locales
(those accessible to all users) requires appropriate privileges.
Creation of locales (both private and public) requires access to the
ANSI C compiler.
localedef recognizes the following options:
-c Create permanent output even if warning messages have
-e Generate 64-bit locale in addition to the 32-bit
locale. This is the default on a 64-bit operating
system and is included to allow cross platform
-n (noinstall) Create the locale file in the current
-v (verbose) Generate as many diagnostic messages as
-w Generate additional warning messages for duplicate
definitions and ellipses use in the LC_COLLATE
If locale definition file contains symbolic names (of
the form <<<<name>>>>) use charmap_file. See charmap(4) for
a description of the format of a charmap_file.
Use locale_definition file as input, instead of
standard input (default).
Hewlett-Packard Company - 1 - HP-UX Release 11i: November 2000
-m method_file Use the specified method_file to overwrite use of
default methods in processing the locale definition.
Specify additional compiler options to be applied in
compiling the locale. See cc_bundled(1) for a complete
list of options. Use with care on a 64-bit operating
system since the additional default option includes
Specify additional loader options to be applied in
linking the locale. See ld(1) for a complete list of
locale_name This argument is required, and identifies the name of
the language following the naming convention of the
LANG environment variable (see environ(5)):
The following is a brief description of the components that make up a
locale. For a complete description of the form and syntax of a locale
definition file, see localedef(4). For a complete description of the
form and effects of a charmap file, see charmap(4).
Six categories of data in the locale_name file are recognized by
setlocale(3C), and make up a language definition:
LC_COLLATE Information in this category affects behavior
of regular-expressions and NLS string-
LC_CTYPE Information in this category affects behavior
of character classification and conversion
LC_MONETARY Information in this category affects behavior
of functions that handle monetary values.
LC_NUMERIC Information in this category affects handling
of the radix character in formatted-
input/output and string-conversion functions.
LC_TIME Information in this category affects behavior
of time-conversion functions.
LC_MESSAGES This category contains information affecting
interpretation of yes/no responses.
Hewlett-Packard Company - 2 - HP-UX Release 11i: November 2000
A locale definition file also consists of six categories. The
beginning of each category is identified by a category tag having the
form LC_category where category is one of the following: CTYPE,
COLLATE, MONETARY, NUMERIC, TIME, or MESSAGES. The end of each
category is identified by a tag consisting of the word END followed by
a space and the category identifier; for example, END LC_COLLATE.
Categories can appear in any order in the locale definition file. At
least one category specifications is required. If a category is not
specified, setlocale() sets up the default ``C'' locale for that
category (see setlocale(3C) and lang(5)).
Each category is composed of one or more statements. Each statement
begins with a keyword followed by one or more expressions. An
expression is a set of well-formed metacharacters, strings, and
constants. localedef also recognizes comments and separators.
More than one definition specified for each category constitutes a
hard error (causes localedef to exit without generating a locale).
Any category can be specified by the keyword copy followed by the name
of a valid locale. This causes the information for the category to be
identical to that in the named locale. Note that the copy keyword, if
used for a category, must be the first and only keyword following the
A methods file is used to creat locales for user-specific character
Operating System Requirements
For cross platform development and development on a 64-bit operating
system several requirements must be observed. Both the 32-bit and 64-
bit method libraries must exist. In the case of the 64-bit shared
library it must be in the directory pa20_64 under the location where
the 32-bit library is located. When the -e option is specified, or
when executing on a 64-bit operating system, the resulting locale is
placed in the directory pa20_64 under the current working directory
unless the install option has been specified.
Locale built for one system cannot be used on other systems.
LANG determines the locale to use when neither LC_ALL or the other
category variables specify a locale.
LC_ALL determines locale to be used. It overrides any values
specified by LANG or any other LC_* variables.
LC_COLLATE and LC_CTYPE have no effect on the processing of localedef,
which behaves as if these two variables were set to the C locale.
Hewlett-Packard Company - 3 - HP-UX Release 11i: November 2000
LC_MESSAGES determines the language in which messages are displayed.
International Code Set Support
Single- and multi-byte character code sets are supported.
localedef returns the following values:
0 No errors occurred and the locale was successfully created.
1 Warnings occurred and the locale was successfully created.
2 The locale specification exceeded implementation limits or
the coded character set used is not supported.
>>>>3 Warnings or errors occurred, and no output was generated.
localedef was developed by OSF and HP.
locale(1), localedef(4), charmap(4), setlocale(3C), environ(5).
localedef: XPG4, POSIX.2
Hewlett-Packard Company - 4 - HP-UX Release 11i: November 2000