This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
GCC can't stop using GNU libiconv if it's in /usr/local
- From: "Kaveh R. Ghazi" <ghazi at caipclassic dot rutgers dot edu>
- To: gcc at gcc dot gnu dot org
- Date: Mon, 16 Jan 2006 19:22:28 -0500 (EST)
- Subject: GCC can't stop using GNU libiconv if it's in /usr/local
I'm trying to bootstrap various GCC branches with --disable-nls on a
system where the admin installed GNU libiconv in the default directory
for GNU software, namely /usr/local. I'm having problems getting the
configury process to stop trying to use the GNU version and instead
work with the system iconv. The problem appears to be that GCC
considers /usr/local/include as one of the default system directories.
So by stage2, we're using the <iconv.h> from GNU libiconv whether we
want to or not.
The conflict is that iconv.h from GNU libiconv defines the iconv(),
iconv_open() and iconv_close() functions to libiconv(),
libiconv_open() and libiconv_close() respectively. So if we use gnu
iconv.h, which we're forced to do here, then we can't link cc1 unless
we also link with libiconv.so where those functions are defined.
When I add --without-libiconv-prefix, it seems to avoid finding
libiconv.so during configure in stage1, but it still uses the wrong
iconv.h as of stage2. And with mainline, since configure is run every
stage it gets worse.
Any ideas?
Thanks,
--Kaveh
--
Kaveh R. Ghazi ghazi@caip.rutgers.edu