Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 131386 - [glibc/locale] iconv ignores /usr/lib64 and fails to convert from "ISO-8859-1"
Summary: [glibc/locale] iconv ignores /usr/lib64 and fails to convert from "ISO-8859-1"
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Gentoo Toolchain Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-04-26 14:48 UTC by Michael Ploujnikov
Modified: 2006-05-04 17:15 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
bad example (straceiconv,3.63 KB, text/plain)
2006-04-26 14:50 UTC, Michael Ploujnikov
Details
strace of the example code conversion (straceiconv,3.50 KB, text/plain)
2006-04-26 14:58 UTC, Michael Ploujnikov
Details
strace of iconv after hack (straceiconv-working,3.58 KB, text/plain)
2006-04-26 15:19 UTC, Michael Ploujnikov
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Ploujnikov 2006-04-26 14:48:40 UTC
For example:

$ iconv --from-code ISO-8859-1 --to-code UCS2 </dev/null
iconv: conversion from `ISO-8859-1' is not supported

Expected output is: literally nothing

Also, FontForge (FF) depends on conversion from ISO-8859-1 to UCS2 and it fails to run on my system. See bug #124998

As soon as I do:
# mv lib32{,-bak}
# ln -s lib64 lib32

both the iconv conversion from ISO-8859-1 to UCS2, and FF work.

Attached is a strace of the above iconv conversion to show that it ignores the 64 bit directory and the modules in it all together.
Comment 1 Michael Ploujnikov 2006-04-26 14:50:34 UTC
Created attachment 85570 [details]
bad example

strace -o /tmp/straceiconv iconv --from-code ISO-8859-1 --to-code "UNICODE" </dev/null
Comment 2 Michael Ploujnikov 2006-04-26 14:58:22 UTC
Created attachment 85572 [details]
strace of the example code conversion

strace -o /tmp/straceiconv iconv --from-code ISO-8859-1 --to-cod
e UCS2 </dev/null
Comment 3 Michael Ploujnikov 2006-04-26 15:02:23 UTC
I must say that after reviewing that strace output iconv doesn't really ignore lib64 but for some reason it fails to use it anyways. And the simple symlink hack shows that there is something wrong.
Comment 4 Michael Ploujnikov 2006-04-26 15:15:56 UTC
I forgot to include the following command:
# cd /usr
Comment 5 Michael Ploujnikov 2006-04-26 15:19:56 UTC
Created attachment 85574 [details]
strace of iconv after hack

same thing:

strace -o /tmp/straceiconv-working iconv --from-code ISO-8859-1 --to-code UCS2 </dev/null

but after linking lib32 to lib64
Comment 6 SpanKY gentoo-dev 2006-04-26 17:19:24 UTC
you forgot to post `emerge info`

works for me with glibc-2.4-r2:
$ iconv --from-code ISO-8859-1 --to-code UCS2 </dev/null
$
Comment 7 Michael Ploujnikov 2006-04-26 17:47:12 UTC
Does it work on amd64?

Here is my emerge info:

Gentoo Base System version 1.6.14
Portage 2.0.54 (default-linux/amd64/2005.1, gcc-3.4.5, glibc-2.3.5-r2, 2.6.15-gentoo-r7 x86_64)
=================================================================
System uname: 2.6.15-gentoo-r7 x86_64 AMD Athlon(tm) 64 Processor 3500+
distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
ccache version 2.3 [enabled]
dev-lang/python:     2.3.5, 2.4.2
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=k8 -pipe -fomit-frame-pointer -O2"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/eselect/compiler /etc/gconf /etc/env.d"
CXXFLAGS="-march=k8 -pipe -fomit-frame-pointer -O2"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distcc distlocks sandbox sfperms strict"
GENTOO_MIRRORS="ftp://distro.ibiblio.org/pub/linux/distributions/gentoo/ http://gentoo.gg3.net/ http://ftp.gentoo.or.kr/ http://mirror.gentoo.gr.jp"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 X alsa audiofile avi berkdb bitmap-fonts bzip2 cdr crypt cscope cups curl divx4linux dri dts dvd dvdr dvdread eds emacs emboss encode esd ethereal exif expat fam ffmpeg flac foomatic foomaticdb fortran gdbm geoip gif gimpprint glut gmp gpm gstreamer gtk gtk2 hal i8x0 idn imagemagick imlib ipv6 isdnlog jack java jpeg junit lcms libwww live lzw lzw-tiff mad matroska mhash mng mono motif mp3 mpeg ncurses nls nptl nptlonly nsplugin nvidia ogg openal opengl pam pcre pdflib perl png pppd python qt quicktime readline recode ruby samba sdl spell sqlite ssl svg tcltk tcpd tetex tga theora tiff truetype truetype-fonts type1-fonts udev unicode usb v4l v4l2 vorbis wxwindows xanim xine xml2 xmms xpm xv xvid zlib userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS

Comment 8 Michael Ploujnikov 2006-04-26 17:51:29 UTC
And I'm not sure why you would use glibc-2.4-r2 if its marked missing for all archs.
Comment 9 SpanKY gentoo-dev 2006-04-26 18:28:58 UTC
i'm the one developing 2.4-r2

and yes, i'm on amd64

you should give 2.3.6-r3 a spin ... chances are we'll be moving that to amd64 stable soon
Comment 10 Michael Ploujnikov 2006-04-27 04:17:41 UTC
I just installed glibc-2.3.6-r3 and I get the same results:
$ iconv --from-code ISO-8859-1 --to-code UCS2</dev/null --verbose
iconv: conversion from `ISO-8859-1' is not supported

Then I installed glibc-2.4-r1 and the only difference was that this time I got an extra message printed:
$ iconv --from-code ISO-8859-1 --to-code UCS2</dev/null
iconv: conversion from `ISO-8859-1' is not supported
Try `iconv --help' or `iconv --usage' for more information.
Comment 11 Michael Ploujnikov 2006-04-28 15:22:33 UTC
I wonder if this is related to the fact that on my system, under normal user GCONV_PATH is set to /usr/lib32/gconv

As a side note, the root user doesn't have that env var defined at all.
Comment 12 Michael Ploujnikov 2006-04-28 15:27:49 UTC
Removing GCONV_PATH (which apparently was just a hack for something else) didn't help.
Comment 13 SpanKY gentoo-dev 2006-05-03 20:54:55 UTC
glibc-2.3.6-r4 and glibc-2.4-r2 should fix this now
Comment 14 Michael Ploujnikov 2006-05-04 17:15:23 UTC
I have confirmation on that.