Hi,

David Jensen wrote:


./.libs/libgnome.so: undefined reference to `libiconv_open'
./.libs/libgnome.so: undefined reference to `libiconv'

It appears you have installed libiconv, dont do that on a glibc system, it's built-in.

Yes. As per my records, I have installed libiconv-1.9.2. in '/usr'. But in what context or which applications, I installed that needed it, I have no clues. I see that in the latest LFS Book there is a warning against installing 'libiconv'. I should have known better. However, to right the situation, I want to first understand correctly, what you have said. So sorry for some repititions here:

You should delete the installed files. If you installed in /usr, check, by date/time, what headers were installed by libiconv in /usr/include. Then restore them from the glibc tarball:
cp iconv/iconv.h /usr/include/
that one is cooked for sure.

That is the only header overwritten.
Delete /usr/include/libcharset.h and localcharset.h
Delete /usr/lib/libcharset* and libiconv*

should fix it, but you *may* need to reinstall apps and libs built with libiconv installed.

You also need to rebuild glibc. Don't reinstall it. After make, while in glibc-build:
cp iconv/iconv_prog /usr/bin/iconv

You could:
Delete /usr/share/man/man1/iconv.1
Reinstall Manpages, to restore the man3 iconv pages.
Note: all this applies *only* if you installed in /usr.

I understand that:

1. I delete the present /usr/include/libcharset.h and localcharset.h
  and also delete  /usr/lib/libcharset* and libiconv*
  and also delete  /usr/share/man/man1/iconv.1
2. I rebuild glibc-2.3.5 (the one I had installed with my LFS) and from the 'glibc-build' directory:
   cp iconv/iconv.h /usr/include/ &&
   cp iconv/iconv_prog /usr/bin/iconv
and Reinstall Manpages, to restore the man3 iconv pages.
3. The date stamps derived from output of 'find /usr -name *iconv*' are as below:
Sep 20 15:16 /usr/bin/iconv    ## Probably installed by libiconv-1.9.2
Aug  5 11:33 /usr/bin/piconv  ## Original installation from glibc-2.3.5.
Sep 20 15:16 /usr/include/iconv.h
Aug  5 10:34 /usr/include/gnu/gcj/convert/Input_iconv.h
Aug  5 10:34 /usr/include/gnu/gcj/convert/Output_iconv.h
Sep 20 15:15 /usr/include/libcharset.h
Sep 20 15:15 /usr/include/localcharset.h
Aug 13 10:13 /usr/include/gtk-2.0/gtk/gtkiconview.h ## Seems unrelated to this.
All 'libs' are stamped Sep 20 15:15
All  /usr/share/locale/*/LC_MESSAGES/libiconv.mo are also  Sep 20 15:16
Aug  5 11:34 /usr/share/man/man1/piconv.1
Sep 20 15:16 /usr/share/doc/libiconv/iconv_close.3.html
Sep 20 15:16 /usr/share/man/man3/iconv_open.3
Aug  4 09:48 /usr/share/man/man0p/iconv.h.0p
Aug  4 09:48 /usr/share/man/man1p/iconv.1p
Aug  4 09:48 /usr/share/man/man3p/iconv.3p
Aug  4 09:48 /usr/share/man/man3p/iconv_close.3p
Aug  4 09:48 /usr/share/man/man3p/iconv_open.3p
Aug  5 11:11 /usr/share/aclocal/iconv.m4
Aug 13 10:14 /usr/share/gtk-2.0/demo/iconview.c ## Unrelated??

The Sep 20 stamps are most likely from libiconv-1.9.2

4. Do I need to delete all items stamped Sep 20 or only those mentioned by you?
5. There is one entry : Aug  4 10:12 /usr/sbin/iconvconfig. What about this?
6. How to install Manpages for restoring man3, after removing man1/iconv.1?

That is quite a basket. Sorry for all that.

Thanks and Regards.

Randhir Phagura


--
http://linuxfromscratch.org/mailman/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to