This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Can't build correctly working crosscompiler with 4.3.0. 4.2.1 worked like charm
On Wednesday 16 April 2008 21:59, Daniel Jacobowitz wrote:
> On Wed, Apr 16, 2008 at 09:55:09PM +0200, Denys Vlasenko wrote:
> > #include "..." search starts here:
> > #include <...> search starts here:
> > include
> > libbb
> > /.share/usr/app/gcc-4.3.0-x86_64-linux-uclibc/bin/../lib/gcc/x86_64-linux-uclibc/4.3.0/include
> > /.share/usr/app/gcc-4.3.0-x86_64-linux-uclibc/bin/../lib/gcc/x86_64-linux-uclibc/4.3.0/include-fixed
> > End of search list.
>
> Read the rest of it, to find the directories it skipped.
Here is that part too:
ignoring nonexistent directory "/.share/usr/app/gcc-4.3.0-x86_64-linux-uclibc/bin/../lib/gcc/x86_64-linux-uclibc/4.3.0/../../../../x86_64-
linux-uclibc/sys-include"
ignoring nonexistent directory "/.share/usr/app/gcc-4.3.0-x86_64-linux-uclibc/bin/../lib/gcc/x86_64-linux-uclibc/4.3.0/../../../../x86_64-
linux-uclibc/include"
ignoring duplicate directory "/.share/usr/app/gcc-4.3.0-x86_64-linux-uclibc/bin/../lib/gcc/../../lib/gcc/x86_64-linux-uclibc/4.3.0/include
"
ignoring duplicate directory "/.share/usr/app/gcc-4.3.0-x86_64-linux-uclibc/bin/../lib/gcc/../../lib/gcc/x86_64-linux-uclibc/4.3.0/include
-fixed"
ignoring nonexistent directory "/.share/usr/app/gcc-4.3.0-x86_64-linux-uclibc/bin/../lib/gcc/../../lib/gcc/x86_64-linux-uclibc/4.3.0/../..
/../../x86_64-linux-uclibc/sys-include"
ignoring nonexistent directory "/.share/usr/app/gcc-4.3.0-x86_64-linux-uclibc/bin/../lib/gcc/../../lib/gcc/x86_64-linux-uclibc/4.3.0/../..
/../../x86_64-linux-uclibc/include"
ignoring duplicate directory "/.1/usr/srcdevel/bbox/fix/busybox.t8_64prime/libbb"
#include "..." search starts here:
#include <...> search starts here:
include
libbb
/.share/usr/app/gcc-4.3.0-x86_64-linux-uclibc/bin/../lib/gcc/x86_64-linux-uclibc/4.3.0/include
/.share/usr/app/gcc-4.3.0-x86_64-linux-uclibc/bin/../lib/gcc/x86_64-linux-uclibc/4.3.0/include-fixed
End of search list.
It seems that 4.2.1 was testing "/usr/lib/../x86_64-linux-uclibc/include",
i.e. "$libdir/../x86_64-linux-uclibc/include". From the listing above
I see them 4.3.0 does not do that anymore - there is no
"/../x86_64-linux-uclibc/include"... or maybe there is, in the form of:
"xxx/../lib/gcc/x86_64-linux-uclibc/4.3.0/../../../../x86_64-linux-uclibc/include"
(Is it necessary to do this "/../../../../" thing?)
Anyway, by now I feel it can be much easier if configure had
a parameter for updating default include path.
> I assume this is another problem of your mixed configure options.
> It's probably relocating the header search dir and you're leaving it
> unrelocated in your installation.
But now I don't have mixed configure options anymore, they all point
to /usr/app/gcc-4.3.0-x86_64-linux-uclibc[/bin etc], as you suggested:
configure invocation was:
STATIC=/usr/app/gcc-4.3.0-x86_64-linux-uclibc
$SRC/configure \
--prefix=$STATIC \
--exec-prefix=$STATIC \
--bindir=$STATIC/bin \
--sbindir=$STATIC/sbin \
--libexecdir=$STATIC/libexec \
--datadir=$STATIC/share \
--sysconfdir=/etc \
--sharedstatedir=$STATIC/var/com \
--localstatedir=$STATIC/var \
--libdir=$STATIC/lib \
--includedir=$STATIC/include \
--infodir=$STATIC/info \
--mandir=$STATIC/man \
\
--disable-nls \
\
--with-local-prefix=/usr/local \
--with-slibdir=$STATIC/lib \
--with-gxx-include-dir=$STATIC/include/g++-v3 \
\
--build=i386-pc-linux-gnu \
--host=i386-pc-linux-gnu \
--target=$CROSS \
\
--with-gnu-ld \
--with-ld="$CROSS-ld" \
--with-gnu-as \
--with-as="$CROSS-as" \
\
--enable-languages="c,c++" \
--enable-target-optspace \
--disable-shared \
--disable-__cxa_atexit \
--disable-threads \
--disable-tls \
--disable-multilib \
--without-headers \
make invocation was:
make \
prefix=$STATIC \
exec-prefix=$STATIC \
bindir=$STATIC/bin \
sbindir=$STATIC/sbin \
libexecdir=$STATIC/libexec \
datadir=$STATIC/share \
sysconfdir=$STATIC/var/etc \
sharedstatedir=$STATIC/var/com \
localstatedir=$STATIC/var \
libdir=$STATIC/lib \
includedir=$STATIC/include \
infodir=$STATIC/info \
mandir=$STATIC/man \
\
install-gcc