iconv_open.texi 1.59 KB
Newer Older
1
2
3
4
@node iconv_open
@section @code{iconv_open}
@findex iconv_open

Paul Eggert's avatar
Paul Eggert committed
5
POSIX specification:@* @url{https://pubs.opengroup.org/onlinepubs/9699919799/functions/iconv_open.html}
6

7
Gnulib module: iconv, iconv_open, iconv_open-utf
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

Portability problems fixed by either Gnulib module @code{iconv} or @code{iconv_open}:
@itemize
@item
GNU libiconv is not found if installed in @file{$PREFIX/lib}.
@item
No converter from EUC-JP to UTF-8 is provided on some platforms:
HP-UX 11.
@end itemize

Portability problems fixed by Gnulib module @code{iconv_open}:
@itemize
@item
This function recognizes only non-standard aliases for many encodings (not
the IANA registered encoding names) on many platforms:
23
AIX 5.1, HP-UX 11, IRIX 6.5, Solaris 11 2010-11, z/OS.
24
25
@end itemize

26
27
28
29
30
Portability problems fixed by Gnulib module @code{iconv_open-utf}:
@itemize
@item
This function does not support the encodings UTF-16BE, UTF-16LE, UTF-32BE,
UTF-32LE on many platforms:
31
AIX 5.1, HP-UX 11, IRIX 6.5.
32
33
@end itemize

34
35
36
37
Portability problems not fixed by Gnulib:
@itemize
@item
This function is missing on some platforms:
38
Mac OS X 10.5, FreeBSD 6.0, OpenBSD 3.8, Minix 3.1.8, Cygwin, mingw, MSVC 14, Android 8.1,
39
40
when GNU libiconv is not installed.
@item
41
42
For some encodings A and B, this function cannot convert directly from A to B,
although an indirect conversion from A through UTF-8 to B is possible.  This
Paul Eggert's avatar
Paul Eggert committed
43
occurs on some platforms: Solaris 11 2010-11.  Gnulib provides a higher-level
44
45
46
facility @code{striconveh} (a wrapper around @code{iconv}) that deals with
this problem.
@item
47
48
The set of supported encodings and conversions is system dependent.
@end itemize