This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.
See the CrossGCC FAQ for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On Tue, Oct 19, 2010 at 1:02 AM, Arnaud Lacombe <lacombar@gmail.com> wrote: > On Tue, Oct 19, 2010 at 3:35 AM, Bryan Hundven <bryanhundven@gmail.com> wrote: >> On Tue, Oct 19, 2010 at 12:22 AM, Arnaud Lacombe <lacombar@gmail.com> wrote: >>> Hi, >>> >>> On Tue, Oct 19, 2010 at 2:47 AM, Bryan Hundven <bryanhundven@gmail.com> wrote: >>>> On Mon, Oct 18, 2010 at 11:38 PM, Arnaud Lacombe <lacombar@gmail.com> wrote: >>>>> Hi, >>>>> >>>>> On Tue, Oct 19, 2010 at 1:43 AM, Anthony Foiani >>>>> <anthony.foiani@gmail.com> wrote: >>>>>> [...] >>>>>> ./xtools/powerpc-e500v2-linux-gnuspe/sys-root/usr/include/bits/fenv.h >>>>>> ./xtools/powerpc-e500v2-linux-gnuspe/sys-root/usr/include/tr1/fenv.h >>>>>> ./xtools/powerpc-e500v2-linux-gnuspe/sys-root/usr/include/fenv.h >>>>>> >>>>> this looks odd. These last two `fenv.h' from GCC generally ends up in >>>>> %SYSROOT%/include/c++/%GCC_VERSION%/, but not in your case. EGlibc >>>>> header gets installed: >>>>> >>>>> [ALL Â] Â Â/opt/cross/platforms/foo/xtools-build/tools/bin/install -c >>>>> -m 644 ../sysdeps/powerpc/bits/fenv.h >>>>> /opt/cross/platforms/foo/xtools/powerpc-e500v2-linux-gnuspe//sys-root/usr/include/bits/fenv.h >>>>> >>>>> then is overwritten by gcc: >>>>> >>>>> c_compatibility_headers_install='/opt/cross/platforms/foo/xtools-build/src/gcc-4.5.1/libstdc++-v3/include/c_compatibility/complex.h >>>>> /opt/cross/platforms/foo/xtools-build/src/gcc-4.5.1/libstdc++-v3/include/c_compatibility/fenv.h >>>>> /opt/cross/platforms/foo/xtools-build/src/gcc-4.5.1/libstdc++-v3/include/c_compatibility/tgmath.h >>>>> /opt/cross/platforms/foo/xtools-build/src/gcc-4.5.1/libstdc++-v3/include/c_compatibility/stdatomic.h'; >>>>> Â Â Âfor file in $c_compatibility_headers_install; do >>>>> /opt/cross/platforms/foo/xtools-build/tools/bin/install -c -m 644 >>>>> $file /opt/cross/platforms/foo/xtools/powerpc-e500v2-linux-gnuspe//sys-root/usr/include; >>>>> done >>>>> >>>>> Â- Arnaud >>>>> >>>> >>>> Hmm. I have been building e500v2 toolchains with ct-ng for a little >>>> while, and the only problems I have ran into were >>>> --enable-target-optspace hitting an optimization issue and this c++ >>>> search path issue (the last one happened on all of my toolchains, not >>>> just the e500v2). >>>> >>>> I see you are using a 2125 of ctng. Could you try with at least 2141 >>>> to rule out the c++ search path issue? >>>> >>> hum, Yann's patch (which ) looks broken: >>> >>> + Â Âif [ "${CT_CC_LANG_CXX}" = "y" Â ]; then >>> + Â Â Â Âextra_config+=("--with-gxx-include-dir=${CT_SYSROOT_DIR}/usr/include") >>> + Â Âfi >>> + >>> >>> "${CT_SYSROOT_DIR}/usr/include" is "${CT_HEADERS_DIR}" where the libc >>> is told to install its headers... >>> >>> As the GCC's fenv.h tries to include the one provided by the C >>> library, it naturally dies. >>> >>> Â- Arnaud >> >> You may be right, but it would seem to me that it would try to find: >> x-tools/powerpc-e500v2-linux-gnuspe/powerpc-e500v2-linux-gnuspe/sys-root/usr/include/c++/4.5.1/fenv.h >> > why would it ? you're giving it the exact place to look for. > >> first, but since g++ is looking in the wrong spot for c++ includes >> (${CT_SYSROOT_DIR}/include), it can't load it. >> > no, it is looking into "${CT_SYSROOT_DIR}/usr/include", nuance. > > Btw, have a look to the implementation of --with-gxx-include-dir and > GLIBCXX_EXPORT_INSTALL_INFO and its use cases. > > Â- Arnaud Arnaud, I think the gxx-include-dir param is a workaround. I believe that something else is falling off the rails early during the ct-ng build that cause (e)glibc to need the ${CT_SYSROOT_DIR}/include symlink or it installs the headers to the wrong spot, that ultimately screws up the final cc's g++ include search path. I have been working on trying to figure this one out. When we can figure this out, we should remove the --with-gxx-include-dir! I also saw strange behavior when both CC_EXTRA_CONFIG=--with-long-double-128 and CC_GCC_LDBL_128=m were set. Lets let Tony finish his build, test, and report cycle. In the mean time, lets keep working on the c++ include path issue in the respective thread ;-) -Bryan -- For unsubscribe information see http://sourceware.org/lists.html#faq
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |