Bug 29780 - temporary file breaks cross-build
Summary: temporary file breaks cross-build
Status: RESOLVED WORKSFORME
Alias: None
Product: gcc
Classification: Unclassified
Component: bootstrap (show other bugs)
Version: unknown
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-11-09 12:06 UTC by Danny Backx
Modified: 2009-10-14 14:20 UTC (History)
3 users (show)

See Also:
Host: i686-pc-linux-gnu
Target: arm-wince-pe, arm-wince-mingw32ce, arm-wince-cegcc
Build: i686-pc-linux-gnu
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Danny Backx 2006-11-09 12:06:31 UTC
Hi,

When performing a cross-build (see the triplets I entered above), a file named "as" gets created which gets used instead of the right assembler, thus breaking the build.

Pls. note that I've entered the target triplets we're building (see http://cegcc.sourceforge.net), this gcc build bug is probably unrelated to them.

I've had to work around this by using a script such as the one pasted below.

I've reported this to the mailing list months ago (see http://gcc.gnu.org/ml/gcc/2006-07/msg00533.html ) but someone asked me a couple of days ago whether I created a bugzilla report, and I don't think I did.

So I'm making up for that now.

Here's the script I use as workaround :
mkdir -p $BUILD_DIR/gpp || exit 1
cd $BUILD_DIR/gpp || exit 1
#
export CFLAGS=""
#
$TOP_SRCDIR/src/gcc/configure \
        --prefix=$PREFIX \
        --enable-languages=c,c++ \
        --disable-interwork \
        --disable-nls \
        --enable-checking \
        --disable-multilib \
        --build=$MY_HOST_ARCH --target=$TGT_ARCH || exit 1
#
# Deliberately no error handling here.
#
make
#
# Because we need to delete this file
#
rm $BUILD_DIR/gpp/gcc/as || exit 1
#
# Now the build should continue smoothly
#
make || exit 1
exit 0
Comment 1 Valentin Longchamp 2006-11-09 12:15:06 UTC
I'm the guy who asked him about the bug report.

The same happened to me with a "armv6-angstrom-linux-gnueabi" target (angstrom is a openembedded based distribution).

I used the same fix (removing the as shell script) successfully
Comment 2 Andrew Pinski 2006-11-09 15:17:12 UTC
What version of GCC are you building?
This works for me with a non "combined" cross to powerpc64-linux-gnu for both 4.1 and 4.2.
Comment 3 Danny Backx 2006-11-09 16:02:36 UTC
dannypc: {9} arm-wince-cegcc-gcc -v
Using built-in specs.
Target: arm-wince-cegcc
Configured with: /home/danny/src/cegcc/svn.sf.net/cegcc/trunk/cegcc/src/gcc/configure --prefix=/usr/ppc --enable-languages=c,c++ --disable-interwork --disable-nls --enable-checking --disable-multilib --build=i686-pc-linux-gnu --target=arm-wince-cegcc
Thread model: win32
gcc version 4.1.0
Comment 4 Valentin Longchamp 2006-12-05 09:04:22 UTC
I've upgraded my toolchain (it is automatically built by my embedded Linux development framework, openembedded) and the problem is here again. The version used for gcc is 4.1.1.

Here are the last compilation lines:

TARGET_CPU_DEFAULT="" \
        HEADERS="auto-host.h ansidecl.h" DEFINES="USED_FOR_TARGET " \
        /bin/sh /home/valentin/EPFL/iMXBoard/linux/openembedded/build/mx31ADS/conf/tmp/work/armv6-angstrom-linux-gnueabi/gcc-cross-initial-4.1.1-r8/gcc-4.1.1/gcc/mkconfig.sh tconfig.h
(echo "@set version-GCC 4.1.1"; \
         if [ "" = "experimental" ]; \
         then echo "@set DEVELOPMENT"; \
         else echo "@clear DEVELOPMENT"; \
         fi) > gcc-vers.texiT
mv -f gcc-vers.texiT gcc-vers.texi
gawk -f /home/valentin/EPFL/iMXBoard/linux/openembedded/build/mx31ADS/conf/tmp/work/armv6-angstrom-linux-gnueabi/gcc-cross-initial-4.1.1-r8/gcc-4.1.1/gcc/opt-functions.awk -f /home/valentin/EPFL/iM
XBoard/linux/openembedded/build/mx31ADS/conf/tmp/work/armv6-angstrom-linux-gnueabi/gcc-cross-initial-4.1.1-r8/gcc-4.1.1/gcc/optc-gen.awk \
               -v header_name="config.h system.h coretypes.h tm.h" < optionlist > options.c
ccache gcc -c   -isystem/home/valentin/EPFL/iMXBoard/linux/openembedded/build/mx31ADS/conf/tmp/staging/i686-linux/include -Os  -DIN_GCC -DCROSS_COMPILE  -W -Wall -Wwrite-strings -Wstrict-prototypes
 -Wmissing-prototypes -pedantic -Wno-long-long -Wno-variadic-macros -Wold-style-definition -Wmissing-format-attribute    -DHAVE_CONFIG_H -I. -I. -I/home/valentin/EPFL/iMXBoard/linux/openembedded/bu
ild/mx31ADS/conf/tmp/work/armv6-angstrom-linux-gnueabi/gcc-cross-initial-4.1.1-r8/gcc-4.1.1/gcc -I/home/valentin/EPFL/iMXBoard/linux/openembedded/build/mx31ADS/conf/tmp/work/armv6-angstrom-linux-gn
ueabi/gcc-cross-initial-4.1.1-r8/gcc-4.1.1/gcc/. -I/home/valentin/EPFL/iMXBoard/linux/openembedded/build/mx31ADS/conf/tmp/work/armv6-angstrom-linux-gnueabi/gcc-cross-initial-4.1.1-r8/gcc-4.1.1/gcc/
../include -I/home/valentin/EPFL/iMXBoard/linux/openembedded/build/mx31ADS/conf/tmp/work/armv6-angstrom-linux-gnueabi/gcc-cross-initial-4.1.1-r8/gcc-4.1.1/gcc/../libcpp/include  -isystem/home/valen
tin/EPFL/iMXBoard/linux/openembedded/build/mx31ADS/conf/tmp/staging/i686-linux/include   /home/valentin/EPFL/iMXBoard/linux/openembedded/build/mx31ADS/conf/tmp/work/armv6-angstrom-linux-gnueabi/gcc
-cross-initial-4.1.1-r8/gcc-4.1.1/gcc/pointer-set.c -o pointer-set.o
/home/valentin/EPFL/iMXBoard/linux/openembedded/build/mx31ADS/conf/tmp/cross/bin/arm-angstrom-linux-gnueabi-as: unrecognized option `-Qy'
make[2]: *** [pointer-set.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory `/home/valentin/EPFL/iMXBoard/linux/openembedded/build/mx31ADS/conf/tmp/work/armv6-angstrom-linux-gnueabi/gcc-cross-initial-4.1.1-r8/gcc-4.1.1/build.i686-linux.arm-angstr
om-linux-gnueabi/gcc'
make[1]: *** [all-gcc] Error 2
make[1]: Leaving directory `/home/valentin/EPFL/iMXBoard/linux/openembedded/build/mx31ADS/conf/tmp/work/armv6-angstrom-linux-gnueabi/gcc-cross-initial-4.1.1-r8/gcc-4.1.1/build.i686-linux.arm-angstr
om-linux-gnueabi'
make: *** [all] Error 2
FATAL: oe_runmake failed
Comment 5 Ramana Radhakrishnan 2009-04-30 10:18:12 UTC
Can you try with a compiler of more recent vintage and report back ?
Comment 6 Richard Earnshaw 2009-10-14 14:20:51 UTC
No feedback