cross compiler for i386-pc-solaris2.9 fails on solaris sparc
Kevin Nomura
nomura@netapp.com
Fri Mar 25 19:01:00 GMT 2005
Hi,
I successfully built a cross compiler to i386-pc-solaris2.9 target
from a linux host. gcc 3.4.2 or 3.4.3, binutils 2.15.
When I try the same configure and build on a solaris 2.8 sparc host
the compile of gcrt1.s fails:
sed -e '/^!/d' </u/nomura/dl/gcc-3.4.2/gcc/config/i386/sol2-gc1.asm
>gcrt1.s
sparc-sun-solaris2.8-as -o gcrt1.o gcrt1.s
/bin/sh /u/nomura/dl/gcc-3.4.2/gcc/move-if-change tmp-mlib.h multilib.h
echo "NULL};" >> tmp-gtyp.h
echo "static const char *const all_files[] = {" >> tmp-gtyp.h
gcrt1.s: Assembler messages:
gcrt1.s:13: Error: Unknown opcode: `pushl'
gcrt1.s:14: Error: Unknown opcode: `pushl'
gcrt1.s:15: Error: Illegal operands
gcrt1.s:18: Error: Unknown opcode: `pushl'
gcrt1.s:21: Error: Illegal operands
gcrt1.s:22: Error: Unknown opcode: `testl'
gcrt1.s:23: Error: Unknown opcode: `je'
gcrt1.s:24: Error: Unknown opcode: `pushl'
I.e. it's trying to use the local assembler instead of the cross
assembler.
Cross binutils 2.15 has been built and installed in the prefix dir.
On solaris (fails):
# /u/nomura/dl/gcc-3.4.2/configure --target=i386-pc-solaris2.9 --prefix=/x/sim/nomura/root.solaris/i386-pc-solaris2.9-gcc-3.4.2 --enable-languages=c,c++ --with-sysroot=/x/sim/nomura/root.solaris/i386-pc-solaris2.9-gcc-3.4.2/sysroot --with-gnu-as --with-gnu-ld
On linux (succcessful):
# /u/nomura/dl/gcc-3.4.2/configure --target=i386-pc-solaris2.9 --prefix=/x/sim/nomura/root.linux/i386-pc-solaris2.9-gcc-3.4.2 --enable-languages=c,c++ --with-sysroot=/x/sim/nomura/root.linux/i386-pc-solaris2.9-gcc-3.4.2/sysroot --with-gnu- as --with-gnu-ld
Since these look the same I suppose it is something else in the
environment. Thanks in advance for any tips.
Kevin Nomura
Network Appliance
More information about the Gcc-help
mailing list