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

Reply via email to