codeset conversion issue with GnuPG 1.4.x on HP-UX 11.0

mike.keighley at adarelexicon.com mike.keighley at adarelexicon.com
Fri Sep 8 16:32:10 CEST 2006


Yesterday I was building GnuPG 1.4.5 on HP-UX 11.0 using a 
creaky-but-working old gcc 3.2
I noticed a message towards the end of the make, which also occurs during 
normal operation.
I have been seeing this message since v1.4.2.2, but not on 1.0.6, 1.0.7 or 
1.2.6

firebird:/tmp [24] $ gpg --encrypt --recipient xxx at xxxx.xxx --armor 
--output handlers.gpg handlers.txt
gpg: conversion from `utf-8' to `iso88591' not available

A similar message is seen with almost any GnuPG operation (--decrypt 
--encrypt --list-key etc.)

I am guessing that this is related to codeset conversion using "iconv" ?
My codeset is indeed iso8859 pt1:

firebird:/tmp [29] $ echo $LC_ALL
en_GB.iso88591

... and I seem to recall reading that GnuPG uses utf-8 internally ? 
So, it is not unreasonable if it is trying to convert between the two.

If I change codeset, the notice/warning/whatever changes to match:
firebird:/tmp [32] $ LC_ALL=C
firebird:/tmp [33] $ gpg --list-key 9C0EC441
gpg: conversion from `utf-8' to `roman8' not available
<snip>

My first thought was that GnuPG had not built with the necessary iconv 
support, but config.log suggests it has:

firebird:/opt/compile/gnupg-1.4.5 [45] $ grep -i iconv config.log
configure:1990: checking whether the new iconv based code is requested
configure:12869: checking for iconv
configure:13002: checking for iconv declaration
         extern size_t iconv (iconv_t cd, char * *inbuf, size_t 
*inbytesleft, ch
ar * *outbuf, size_t *outbytesleft);
| #define HAVE_ICONV 1
| #define ICONV_CONST
<snip> above 2 lines repeated dozens of times
| #define HAVE_ICONV 1
| #define ICONV_CONST
| #define USE_GNUPG_ICONV 1
am_cv_func_iconv=yes
am_cv_lib_iconv=no
am_cv_proto_iconv='extern size_t iconv (iconv_t cd, char * *inbuf, size_t 
*inbyt
esleft, char * *outbuf, size_t *outbytesleft);'
am_cv_proto_iconv_arg1=''
LIBICONV=''
LTLIBICONV=''
#define HAVE_ICONV 1
#define ICONV_CONST
#define USE_GNUPG_ICONV 1

My next thought (based on LIBICONV= blank and USE_GNUPG_ICONV 1) was that 
maybe configure is failing to detect the native HP iconv library, or 
doesn't know about HP iconv and wants GNU iconv, failing which it uses an 
internal iconv, which maybe doesn't support en_GB.iso88591 and similar ?

I have no idea how to verify any of these suppositions though, or how to 
persuade configure/make to detect iconv correctly.

Any pointers most welcome please.  TIA.

-- 
Mike




More information about the Gnupg-users mailing list