Hi all:
  Currently I'm building cross gcc for mips32 on winXp+cygwin.
I tried both gcc 4.2.4 and 4.2.3 and there is a building problem with 4.2.4

gcc makefile normally issue shell command "echo 'exec
$(ORIGINAL_AS_FOR_TARGET) "$$@"' >> as ; \"
at around line 1370, but  ORIGINAL_AS_FOR_TARGET defined several lines
above is empty.
so I got some kind like "exec -options..." which should be "exec
assembler -options...",
of course this will fail.

I checked configure and found following codes and comments:


# ---------------------------
# Assembler & linker features
# ---------------------------

# Identify the assembler which will work hand-in-glove with the newly
# built GCC, so that we can examine its features.  This is the assembler
# which will be driven by the driver program.
#
# If build != host, and we aren't building gas in-tree, we identify a
# build->target assembler and hope that it will have the same features
# as the host->target assembler we'll be using.
gcc_cv_gas_major_version=
gcc_cv_gas_minor_version=
gcc_cv_as_gas_srcdir=`echo $srcdir | sed -e 's,/gcc$,,'`/gas


if test "${gcc_cv_as+set}" = set; then
  :
else
  #other commands...
fi

ORIGINAL_AS_FOR_TARGET=$gcc_cv_as
<--------------------------------------------cut here
Apparently ORIGINAL_AS_FOR_TARGET comes from gcc_cv_as. however,
gcc_cv_as is set to empty
before if statement, which causes ORIGINAL_AS_FOR_TARGET to be set to empty.
as for gcc 4.2.3, gcc_cv_as is set to non-empty value before if
statement, which is ok.

I don't know much about configure process, So where does gcc_cv_as come from?

following is the configure command:

../../src/gcc-4.2.4/configure
--build=i686-pc-cygwin
--host=i686-pc-cygwin
--target=mipsel-elf
--prefix=/cygdrive/e/work/lx4380/target-gcc-4.2.4/
--enable-languages=c
--disable-__cxa_atexit
--enable-target-optspace
--with-gnu-ld
--disable-shared
--disable-nls
--disable-threads
--disable-multilib
--with-abi=32
--with-mtune=mips32r2
--with-float=soft
--disable-libssp

BTW: binutils is ok and was installed to same target before.

Thanks in advance.
Regards.

Reply via email to