After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 81669 - charset.alias problems on Tru64
charset.alias problems on Tru64
Status: RESOLVED FIXED
Product: glib
Classification: Platform
Component: general
2.0.x
Other Linux
: Normal normal
: ---
Assigned To: gtkdev
gtkdev
: 78256 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2002-05-13 19:23 UTC by Owen Taylor
Modified: 2011-02-18 15:48 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
charset test program (381 bytes, patch)
2002-05-13 19:24 UTC, Owen Taylor
none Details | Review
Diagnostic patch for gconvert.c (552 bytes, patch)
2002-05-15 14:21 UTC, Owen Taylor
none Details | Review
charset.alias (601 bytes, text/plain)
2002-05-15 16:28 UTC, Manuel Op de Coul
  Details

Description Owen Taylor 2002-05-13 19:23:59 UTC
According to bug 78257 g_print() is segfaulting on Tru64
(in the C locale) as of GLib-2.0.1. This probably means
that the output of g_get_charset() is not recognized
by g_convert().

Which means that config.charset needs some addition to
its entry for osf*) [ and hopefully osf* is being
hit for Tru64 ]

Knowing what g_get_charset() would be useful ... could
you try compiling the attached program with:

 cc -o charset charset.c `pkg-config --cflags --libs glib-2.0`

And report what the output is?
Comment 1 Owen Taylor 2002-05-13 19:24:37 UTC
Created attachment 8433 [details] [review]
charset test program
Comment 2 Owen Taylor 2002-05-13 21:46:46 UTC
*** Bug 78256 has been marked as a duplicate of this bug. ***
Comment 3 Manuel Op de Coul 2002-05-15 12:48:47 UTC
Owen I assume you meant gcc, which is what I use, cc can't
compile it. It says:
$ 
charset
The charset is ISO-8859-1
failed to convert: Conversion from character 
set 'UTF-8' to 'ISO-8859-1' is not supported
Comment 4 Owen Taylor 2002-05-15 14:21:23 UTC
Created attachment 8488 [details] [review]
Diagnostic patch for gconvert.c
Comment 5 Owen Taylor 2002-05-15 14:22:28 UTC
Could you try applying the attached patch to gconvert.c
and see what the output of the test program with that
change to GLib?

Also, could you attach your $(prefix)/lib/charset.alias?

Thanks,
                           Owen
Comment 6 Manuel Op de Coul 2002-05-15 16:28:58 UTC
Created attachment 8492 [details]
charset.alias
Comment 7 Manuel Op de Coul 2002-05-15 16:30:52 UTC
Ok, now this is the output:
The charset is ISO-8859-1
Trying conversion from UTF-8 to 
ISO8859-1
Trying conversion from UTF-8 to ISO8859-1
failed to convert: Conversion 
from character set 'UTF-8' to 'ISO-8859-1' is not supported

The requested file is 
attached.
Manuel
Comment 8 Manuel Op de Coul 2002-05-15 16:35:58 UTC
Ok, now this is the output:
The charset is ISO-8859-1
Trying conversion from UTF-8 to 
ISO8859-1
Trying conversion from UTF-8 to ISO8859-1
failed to convert: Conversion 
from character set 'UTF-8' to 'ISO-8859-1' is not supported

Manuel
Comment 9 Owen Taylor 2002-05-15 17:51:16 UTC
Can you confirm (by looking at the docs for iconv_open
or whatever) that your system's iconv doesn't
have a conversion between ISO-8859-1 (under any name)
and UTF-8 (under any name)?
Comment 10 Manuel Op de Coul 2002-05-16 08:52:24 UTC
Indeed it doesn't, here's what's supported:
$ pwd
/usr/lib/nls/loc
$ ls *
C                   
en_GB.88591.en      fr_CA.88591         nl_BE.ISO8859-1
C.en                en_GB.88591@DEC     
fr_CA.88591.en      nl_NL.88591
Cextend             en_GB.88591@DEC.en  fr_CA.ISO8859-1     
nl_NL.88591.en
Cextend.en          en_GB.ISO8859-1     fr_CH.88591         nl_NL.ISO8859-
1
da_DK.88591         en_US.88591         fr_CH.88591.en      no_NO.88591
da_DK.88591.en      
en_US.88591.en      fr_CH.ISO8859-1     no_NO.88591.en
da_DK.ISO8859-1     en_US.ISO8859-1     
fr_FR.88591         no_NO.ISO8859-1
de_CH.88591         en_US.cp850         fr_FR.88591.en      
pt_PT.88591
de_CH.88591.en      es_ES.88591         fr_FR.88591@DEC     
pt_PT.88591.en
de_CH.ISO8859-1     es_ES.88591.en      fr_FR.88591@DEC.en  
pt_PT.ISO8859-1
de_DE.88591         es_ES.ISO8859-1     fr_FR.ISO8859-1     
sv_SE.88591
de_DE.88591.en      fi_FI.88591         is_IS.ISO8859-1     
sv_SE.88591.en
de_DE.88591@DEC     fi_FI.88591.en      it_IT.88591         sv_SE.ISO8859-
1
de_DE.88591@DEC.en  fi_FI.ISO8859-1     it_IT.88591.en      tr_TR.ISO8859-
9
de_DE.ISO8859-1     fr_BE.88591         it_IT.ISO8859-1
el_GR.ISO8859-7     fr_BE.88591.en      
nl_BE.88591
en_GB.88591         fr_BE.ISO8859-1     
nl_BE.88591.en

charmaps:
ascii.cm

iconv:
ASCII-GR_ISO8859-1      ISO8859-
1_ISO8859-1-GL  ISO8859-1_fold8
ISO8859-1-GL_ISO8859-1  ISO8859-1_ISO8859-1-GR  
ct_ISO8859-1
ISO8859-1-GR_ISO8859-1  ISO8859-1_ct            fold7_ISO8859-1
ISO8859-
1_ASCII-GR      ISO8859-1_fold7         fold8_ISO8859-1

Can the missing file(s) be obtained 
somewhere?
Comment 11 Owen Taylor 2002-05-16 15:34:03 UTC
What you need to do is to install GNU libiconv 
and configure with --with-libiconv.

I'd like to be able to test for the necessary support
in configure, but it's really difficult to do, since
we need all the machinery in glib/glib/libcharset
to be able to do the test.

So, I guess we'll just have to mention the need
for GNU libiconv on Tru64 in the README / install
docs.
Comment 12 Manuel Op de Coul 2002-05-16 16:03:25 UTC
When I do that, another problem comes up:

gcc -g -O2 -Wall -o glib-genmarshal glib-
genmarshal.o  ../glib/.libs/libglib-2.0
.so /usr/local/lib/libintl.so 
/usr/local/lib/libiconv.so -Wl,-rpath -Wl,/usr/use
rs/coul1358/glib-
2.0.1/glib/.libs:/usr/users/coul1358/local/lib
/usr/bin/ld:
Warning 
version mismatch for shared library libiconv.so
glib-genmarshal depends on 
version 2.0.4:2.0 and libintl.so depends on version o
sf.1
echo "#ifndef 
__G_MARSHAL_H__" > xgen-gmh \
&& echo "#define __G_MARSHAL_H__" >> xgen-gmh \
&& 
./glib-genmarshal --nostdinc --prefix=g_cclosure_marshal ./gmarshal.list --he
ader 
>> xgen-gmh \
&& echo "#endif /* __G_MARSHAL_H__ */" >> xgen-gmh \
&& (cmp -s xgen-gmh 
./gmarshal.h || cp xgen-gmh ./gmarshal.h) \
&& rm -f xgen-gmh xgen-gmh~ \
&& echo 
timestamp > stamp-gmarshal.h
4354:./glib-genmarshal: /sbin/loader: Fatal 
Error: Cannot load multiple versions
 of shared object. libintl.so depends on 
version osf.1 of libiconv.so and Main d
epends on version 2.0.4:2.0 of 
libiconv.so.
make[1]: *** [stamp-gmarshal.h] Error 1
make[1]: Leaving 
directory `/usr/users/coul1358/glib-2.0.1/gobject'
make: *** [install-
recursive] Error 1
Comment 13 Owen Taylor 2002-05-16 16:11:01 UTC
Hmm, is this GNU libintl? If so, you'll probably need to
rebuild it to use GNU libiconv as well.
Comment 14 Manuel Op de Coul 2002-05-16 17:20:27 UTC
That's it, better mention that in the readme docs too.

testglib now runs on my 
system. Thanks.
Comment 15 Owen Taylor 2002-06-13 20:04:01 UTC
Patch applied

Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/glib/ChangeLog,v
retrieving revision 1.1085.2.28
diff -u -p -r1.1085.2.28 ChangeLog
--- ChangeLog   11 Jun 2002 23:27:24 -0000      1.1085.2.28
+++ ChangeLog   13 Jun 2002 20:01:02 -0000
@@ -1,3 +1,8 @@
+Thu Jun 13 15:57:46 2002  Owen Taylor  <otaylor@redhat.com>
+
+       * INSTALL.in: Add a note about the deficiency
+       of Tru64 iconv. (#81699, Manuel Op de Coul)
+
 Tue Jun 11 17:03:39 2002  Owen Taylor  <otaylor@redhat.com>

        * tests/patterntest.c (test_compilation)
Index: INSTALL.in
===================================================================
RCS file: /cvs/gnome/glib/INSTALL.in,v
retrieving revision 1.4.2.1
diff -u -p -r1.4.2.1 INSTALL.in
--- INSTALL.in  22 May 2002 20:01:17 -0000      1.4.2.1
+++ INSTALL.in  13 Jun 2002 20:01:02 -0000
@@ -47,6 +47,12 @@ At a minimum you'll need the SUNWuiu8 pa
 should also install the SUNWciu8, SUNWhiu8, SUNWjiu8, and
 SUNWkiu8 packages.

+The native iconv on Compaq Tru64 doesn't contain support for
+UTF-8, so you'll need to use GNU libiconv instead. (When
+using GNU libiconv for GTK+, you'll need to use GNU libiconv
+for GNU gettext as well.) This probably applies to related
+operating systems as well.
+
 Finally, for message catalog handling, GTK+ requires an implementation
 of gettext(). If your system doesn't provide this functionality,
 you should use the libintl library from the GNU gettext package,