On Wed, Jan 7, 2015 at 4:06 AM, Andrew Haley <aph@xxxxxxxxxx> wrote: > On 06/01/15 20:12, Cyd Haselton wrote: >>>> Different failure, (to be expected, it's a test) but my question is... >>>> >> what are fakechroot and dlopen doing in your 4.9 config.log? >>> > >>> > Good point. I wonder what fakechroot has to do with any of this? >>> > fakechroot should have its own version of dlopen in libfakechroot.so. >>> > >>> > But why on Earth is fakechroot in use when building gcc? >>> > >> I'm building on an Android device in an env that uses fakechroot to >> simulate a real Linux filesystem...instead of the craziness that >> Android uses. > > Okay. I think this may be an important clue. > > Please re-run the failing link step with a "-v" argument and let's see > exactly what the input files and what the error is. > > I am wondering if it's not the link itself which fails but the link > fails to run. > > Andrew. > Here goes. Warning, long commands follow 4.8 link with -v: /android_root/system/bin/sh ../../../gcc-4.8.4/libgcc/../mkinstalldirs . /bld/gcc/builddir-4.8/./gcc/xgcc -v -B/bld/gcc/builddir-4.8/./gcc/ -B/usr/gcc-4.8.4/arm-linux-androideabi/bin/ -B/usr/gcc-4.8.4/arm-linux-androideabi/lib/ -isystem /usr/gcc-4.8.4/arm-linux-androideabi/include -isystem /usr/gcc-4.8.4/arm-linux-androideabi/sys-include --sysroot=/usr/gcc-4.8.4/sysroot -O2 -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fPIC -fno-inline -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -shared -nodefaultlibs -Wl,--soname=libgcc_s.so.1 -Wl,--version-script=libgcc.map -o ./libgcc_s.so.1.tmp -g -O2 -Wall -O -mandroid -mbionic -B./ (long list of obj files) libgcc.a -lc && rm -f ./libgcc_s.so && if [ -f ./libgcc_s.so.1 ]; then mv -f ./libgcc_s.so.1 ./libgcc_s.so.1.backup; else true; fi && mv ./libgcc_s.so.1.tmp ./libgcc_s.so.1 && (echo "/* GNU ld script"; echo " Use the shared library, but some functions are only in"; echo " the static library. */"; echo "GROUP ( libgcc_s.so.1 -lgcc )" ) > ./libgcc_s.so dest=../.././gcc/include/tmp$$-unwind.h; \ cp unwind.h $dest; \ chmod a+r $dest; \ sh ../../../gcc-4.8.4/libgcc/../move-if-change $dest ../.././gcc/include/unwind.h # Now that we have built all the objects, we need to copy # them back to the GCC directory. Too many things (other # in-tree libraries, and DejaGNU) know about the layout # of the build tree, for now. make install-leaf DESTDIR=../.././gcc \ slibdir= libsubdir= MULTIOSDIR=. make[1]: Entering directory `/bld/gcc/builddir-4.8/arm-linux-androideabi/libgcc' /android_root/system/bin/sh ../../../gcc-4.8.4/libgcc/../mkinstalldirs ../.././gcc /bin/install -c -m 644 libgcc_eh.a ../.././gcc/ chmod 644 ../.././gcc/libgcc_eh.a /usr/gcc-4.8.4/bin/ranlib ../.././gcc/libgcc_eh.a /android_root/system/bin/sh ../../../gcc-4.8.4/libgcc/../mkinstalldirs ../.././gcc; /bin/install -c -m 644 ./libgcc_s.so.1 ../.././gcc/libgcc_s.so.1; rm -f ../.././gcc/libgcc_s.so; /bin/install -c -m 644 ./libgcc_s.so ../.././gcc/libgcc_s.so /android_root/system/bin/sh ../../../gcc-4.8.4/libgcc/../mkinstalldirs ../.././gcc /bin/install -c -m 644 libgcc.a ../.././gcc/ chmod 644 ../.././gcc/libgcc.a /usr/gcc-4.8.4/bin/ranlib ../.././gcc/libgcc.a /bin/install -c -m 644 libgcov.a ../.././gcc/ chmod 644 ../.././gcc/libgcov.a /usr/gcc-4.8.4/bin/ranlib ../.././gcc/libgcov.a parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"; \ for file in $parts; do \ rm -f ../.././gcc/$file; \ /bin/install -c -m 644 $file ../.././gcc/; \ case $file in \ *.a) \ /usr/gcc-4.8.4/bin/ranlib ../.././gcc/$file ;; \ esac; \ done make[1]: Leaving directory `/bld/gcc/builddir-4.8/arm-linux-androideabi/libgcc' 4.9 link with -v /android_root/system/bin/sh ../../../gcc-4.9.2/libgcc/../mkinstalldirs . /bld/gcc/builddir-4.9/./gcc/xgcc -v -B/bld/gcc/builddir-4.9/./gcc/ -B/usr/gcc-4.9.2/arm-linux-androideabi/bin/ -B/usr/gcc-4.9.2/arm-linux-androideabi/lib/ -isystem /usr/gcc-4.9.2/arm-linux-androideabi/include -isystem /usr/gcc-4.9.2/arm-linux-androideabi/sys-include --sysroot=/usr/gcc-4.9.2/sysroot -O2 -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fPIC -fno-inline -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -shared -nodefaultlibs -Wl,--soname=libgcc_s.so.1 -Wl,--version-script=libgcc.map -o ./libgcc_s.so.1.tmp -g -O2 -Wall -O -mandroid -mbionic -B./ (long list of obj files) libgcc.a -lc -ldl && rm -f ./libgcc_s.so && if [ -f ./libgcc_s.so.1 ]; then mv -f ./libgcc_s.so.1 ./libgcc_s.so.1.backup; else true; fi && mv ./libgcc_s.so.1.tmp ./libgcc_s.so.1 && (echo "/* GNU ld script"; echo " Use the shared library, but some functions are only in"; echo " the static library. */"; echo "GROUP ( libgcc_s.so.1 -ldl -lgcc )" ) > ./libgcc_s.so