Seen that 4.3.1 has been released, I tried to build
i486-linux-uclibc cross-compiler.
It went fine except for the detail that none of crtXXXX.o files
are found in installation directory after "make install"
For comparison, gcc 4.2.1's directory has them:
# find -name 'crt*.o'
./lib/gcc/i486-linux-uclibc/4.2.1/crtbeginS.o
./lib/gcc/i486-linux-uclibc/4.2.1/crtbeginT.o
./lib/gcc/i486-linux-uclibc/4.2.1/crtfastmath.o
./lib/gcc/i486-linux-uclibc/4.2.1/crtbegin.o
./lib/gcc/i486-linux-uclibc/4.2.1/crtendS.o
./lib/gcc/i486-linux-uclibc/4.2.1/crtend.o
But neither 4.3.0 nor 4.3.1 have none.
# ./i486-linux-uclibc-gcc -v
Using built-in specs.
Target: i486-linux-uclibc
Configured with: ../gcc-4.3.1/configure
--prefix=/usr/app/gcc-4.3.1-i486-linux-uclibc
--exec-prefix=/usr/app/gcc-4.3.1-i486-linux-uclibc
--bindir=/usr/app/gcc-4.3.1-i486-linux-uclibc/bin
--sbindir=/usr/app/gcc-4.3.1-i486-linux-uclibc/sbin
--libexecdir=/usr/app/gcc-4.3.1-i486-linux-uclibc/libexec
--datadir=/usr/app/gcc-4.3.1-i486-linux-uclibc/share --sysconfdir=/etc
--sharedstatedir=/usr/app/gcc-4.3.1-i486-linux-uclibc/var/com
--localstatedir=/usr/app/gcc-4.3.1-i486-linux-uclibc/var
--libdir=/usr/app/gcc-4.3.1-i486-linux-uclibc/lib
--includedir=/usr/app/gcc-4.3.1-i486-linux-uclibc/include
--infodir=/usr/app/gcc-4.3.1-i486-linux-uclibc/info
--mandir=/usr/app/gcc-4.3.1-i486-linux-uclibc/man --disable-nls
--with-local-prefix=/usr/local
--with-slibdir=/usr/app/gcc-4.3.1-i486-linux-uclibc/lib
--with-gxx-include-dir=/usr/app/gcc-4.3.1-i486-linux-uclibc/include/g++-v3
--build=i386-pc-linux-gnu --host=i386-pc-linux-gnu --target=i486-linux-uclibc
--with-gnu-ld --with-ld=/usr/bin/i486-linux-uclibc-ld --with-gnu-as
--with-as=/usr/bin/i486-linux-uclibc-as
--with-sysroot=/usr/cross/i486-linux-uclibc --enable-languages=c,c++
--enable-target-optspace --disable-shared --disable-__cxa_atexit
--disable-threads --disable-tls --disable-multilib --without-headers
Thread model: single
gcc version 4.3.1 (GCC)
Grepping through make log I see only one line mentioning them:
echo GCC_EXTRA_PARTS = 'crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o
crtfastmath.o crtprec32.o crtprec64.o crtprec80.o' >> tmp-libgcc.mvars
and no attempt to compile them.
gcc 4.2.1 make run had no such line, instead it looked like this:
SHLIB_EXT='.so' \
SHLIB_MULTILIB='' \
SHLIB_MKMAP='../../gcc-4.2.1/gcc/mkmap-symver.awk' \
SHLIB_MKMAP_OPTS='' \
SHLIB_MAPFILES='../../gcc-4.2.1/gcc/libgcc-std.ver
../../gcc-4.2.1/gcc/config/libgcc-glibc.ver' \
SHLIB_NM_FLAGS='-pg' \
MULTILIB_OSDIRNAMES='' \
ASM_HIDDEN_OP='' \
GCC_FOR_TARGET='/.1/usr/src/gcc-4.2.1.obj-i486-linux-uclibc/./gcc/xgcc
-B/.1/usr/src/gcc-4.2.1.obj-i486-linux-uclibc/./gcc/ -B/usr/app/gcc
mkinstalldirs='/bin/sh ../../gcc-4.2.1/gcc/../mkinstalldirs' \
/bin/sh mklibgcc > tmp-libgcc.mk
mv tmp-libgcc.mk libgcc.mk
TARGET_CPU_DEFAULT="" \
HEADERS="auto-host.h ansidecl.h" DEFINES="USED_FOR_TARGET " \
/bin/sh ../../gcc-4.2.1/gcc/mkconfig.sh tconfig.h
/.1/usr/src/gcc-4.2.1.obj-i486-linux-uclibc/./gcc/xgcc
-B/.1/usr/src/gcc-4.2.1.obj-i486-linux-uclibc/./gcc/
-B/usr/app/gcc-4.2.1-i486-linu
-c ../../gcc-4.2.1/gcc/crtstuff.c -DCRT_BEGIN \
-o crtbegin.o
/.1/usr/src/gcc-4.2.1.obj-i486-linux-uclibc/./gcc/xgcc
-B/.1/usr/src/gcc-4.2.1.obj-i486-linux-uclibc/./gcc/
-B/usr/app/gcc-4.2.1-i486-linu
-c ../../gcc-4.2.1/gcc/crtstuff.c -DCRT_BEGIN -DCRTSTUFFS_O \
-o crtbeginS.o
/.1/usr/src/gcc-4.2.1.obj-i486-linux-uclibc/./gcc/xgcc
-B/.1/usr/src/gcc-4.2.1.obj-i486-linux-uclibc/./gcc/
-B/usr/app/gcc-4.2.1-i486-linu
-c ../../gcc-4.2.1/gcc/crtstuff.c -DCRT_BEGIN -DCRTSTUFFT_O \
-o crtbeginT.o
/.1/usr/src/gcc-4.2.1.obj-i486-linux-uclibc/./gcc/xgcc
-B/.1/usr/src/gcc-4.2.1.obj-i486-linux-uclibc/./gcc/
-B/usr/app/gcc-4.2.1-i486-linu
-c ../../gcc-4.2.1/gcc/crtstuff.c -DCRT_END \
-o crtend.o
/.1/usr/src/gcc-4.2.1.obj-i486-linux-uclibc/./gcc/xgcc
-B/.1/usr/src/gcc-4.2.1.obj-i486-linux-uclibc/./gcc/
-B/usr/app/gcc-4.2.1-i486-linu
-c ../../gcc-4.2.1/gcc/crtstuff.c -DCRT_END -DCRTSTUFFS_O \
-o crtendS.o
/.1/usr/src/gcc-4.2.1.obj-i486-linux-uclibc/./gcc/xgcc
-B/.1/usr/src/gcc-4.2.1.obj-i486-linux-uclibc/./gcc/
-B/usr/app/gcc-4.2.1-i486-linu
../../gcc-4.2.1/gcc/config/i386/crtfastmath.c \
-o crtfastmath.o
make \
CFLAGS="-Os -falign-functions=1 -falign-labels=1 -falign-loops=1
-falign-jumps=1 -fomit-frame-pointer -W -Wall -Wwrite-strings -Wstrict-
CONFIG_H="tconfig.h auto-host.h ../../gcc-4.2.1/gcc/../include/ansidecl.h"
TM_H="tm.h options.h ../../gcc-4.2.1/gcc/config/i386/i38
INCLUDES="-I. -I. -I../../gcc-4.2.1/gcc -I../../gcc-4.2.1/gcc/.
-I../../gcc-4.2.1/gcc/../include -I../../gcc-4.2.1/gcc/../libcpp/include
MAKEOVERRIDES= \
-f libgcc.mk all
make[2]: Entering directory `/.1/usr/src/gcc-4.2.1.obj-i486-linux-uclibc/gcc'
for d in libgcc; do \
if [ -d $d ]; then true; else /bin/sh ../../gcc-4.2.1/gcc/../mkinstalldirs
$d; fi; \
done
mkdir libgcc
Any help?
--
vda