This is the mail archive of the crossgcc@cygnus.com mailing list for the crossgcc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

djgcpp cross assembler for PPC



Hi,
I am having problems with the cross assembler (djgcpp as downloaded from
the www.objsw.com/download site) for the PPC cross assembler and the
little-endian runtimes.

When compiling a small test program the assembler seems to be creating a
big-endian object file which then links to the little-endian libs and
fails.

Is it possible that the as built for this was built assuming big-endian?

Thanks for info,
Michel
---------------------------------------
Michel Pinton
Sr Principal S/W Engineer
Sensormatic ACD

Here's the command line and output.

My command line is ->
gcc -gstabs       -v    -mlittle-endian    hello.c

the output  (due to the -v option) is ->

Using builtin specs.
gcc version 2.8.1
 d:/xgcc/ppc/2_8_1/cpp.exe -lang-c -v -iprefix d:/xgcc/dos/2_8_1/ -undef
-D__GNUC__=2 -D__GNUC_MIN
-gstabs -Di386 -Asystem(unix) -Acpu(i386) -Amachine(i386) -D__i386__
-Asystem(unix) -Acpu(i386) -A
GNU CPP version egcs-2.90.29 980515 (egcs-1.0.3 release) (PowerPC Embedded)
#include "..." search starts here:
#include <...> search starts here:
 d:/xgcc/ppc/2_8_1/include
End of search list.
 d:/xgcc/ppc/2_8_1/cc1.exe C:\TEMP/ccaaaaaa.i -quiet -dumpbase hello.c
-mlittle-endian -gstabs -ve
GNU C version egcs-2.90.29 980515 (egcs-1.0.3 release) (ppc) compiled by
GNU C version 2.8.1.
hello.c: In function `main':
hello.c:32: warning: return type of `main' is not `int'
 d:/xgcc/bin/as.exe -o C:\TEMP/ccaaaaaa1.o C:\TEMP/ccaaaaaa.s
 d:/xgcc/bin/ld.exe d:/xgcc/ppc/2_8_1/le/crt0.o -Ld:/xgcc
-Ld:/xgcc/ppc/2_8_1/le C:\TEMP/ccaaaaaa1
d:/xgcc/bin/ld.exe: d:/xgcc/ppc/2_8_1/le/crt0.o: compiled for a little
endian system and target is
File in wrong format: failed to merge target specific data of file
d:/xgcc/ppc/2_8_1/le/crt0.o
d:/xgcc/bin/ld.exe: eabi.o: compiled for a little endian system and target
is big endian
File in wrong format: failed to merge target specific data of file
d:/xgcc/ppc/2_8_1/le/libgcc.a(e
d:/xgcc/bin/ld.exe: eabi-ctors.o: compiled for a little endian system and
target is big endian
File in wrong format: failed to merge target specific data of file
d:/xgcc/ppc/2_8_1/le/libgcc.a(e
d:/xgcc/bin/ld.exe: atexit.o: compiled for a little endian system and
target is big endian
File in wrong format: failed to merge target specific data of file
d:/xgcc/ppc/2_8_1/le/libg.a(ate
d:/xgcc/bin/ld.exe: exit.o: compiled for a little endian system and target
is big endian
File in wrong format: failed to merge target specific data of file
d:/xgcc/ppc/2_8_1/le/libg.a(exi
d:/xgcc/bin/ld.exe: impure.o: compiled for a little endian system and
target is big endian
File in wrong format: failed to merge target specific data of file
d:/xgcc/ppc/2_8_1/le/libg.a(imp
d:/xgcc/bin/ld.exe: malloc.o: compiled for a little endian system and
target is big endian
File in wrong format: failed to merge target specific data of file
d:/xgcc/ppc/2_8_1/le/libg.a(mal
d:/xgcc/bin/ld.exe: mallocr.o: compiled for a little endian system and
target is big endian
File in wrong format: failed to merge target specific data of file
d:/xgcc/ppc/2_8_1/le/libg.a(mal
d:/xgcc/bin/ld.exe: memcpy.o: compiled for a little endian system and
target is big endian
File in wrong format: failed to merge target specific data of file
d:/xgcc/ppc/2_8_1/le/libg.a(mem
d:/xgcc/bin/ld.exe: sbrkr.o: compiled for a little endian system and target
 is big endian
File in wrong format: failed to merge target specific data of file
d:/xgcc/ppc/2_8_1/le/libg.a(sbr
d:/xgcc/ppc/2_8_1/le/libgcc.a(eabi.o)(.got2+0x8): undefined reference to
`__SDATA_START__'
d:/xgcc/ppc/2_8_1/le/libgcc.a(eabi.o)(.got2+0xc): undefined reference to
`__SBSS_END__'
d:/xgcc/ppc/2_8_1/le/libgcc.a(eabi.o)(.got2+0x14): undefined reference to
`__SDATA2_START__'
d:/xgcc/ppc/2_8_1/le/libgcc.a(eabi.o)(.got2+0x18): undefined reference to
`__SBSS2_END__'
d:/xgcc/ppc/2_8_1/le/libgcc.a(eabi.o)(.got2+0x1c): undefined reference to
`__GOT_START__'
d:/xgcc/ppc/2_8_1/le/libgcc.a(eabi.o)(.got2+0x28): undefined reference to
`__GOT_END__'
d:/xgcc/ppc/2_8_1/le/libgcc.a(eabi.o)(.got2+0x2c): undefined reference to
`__GOT2_START__'
d:/xgcc/ppc/2_8_1/le/libgcc.a(eabi.o)(.got2+0x30): undefined reference to
`__GOT2_END__'
d:/xgcc/ppc/2_8_1/le/libgcc.a(eabi.o)(.got2+0x34): undefined reference to
`__FIXUP_START__'
d:/xgcc/ppc/2_8_1/le/libgcc.a(eabi.o)(.got2+0x38): undefined reference to
`__FIXUP_END__'
d:/xgcc/ppc/2_8_1/le/libgcc.a(eabi.o)(.got2+0x4c): undefined reference to
`__EXCEPT_START__'
d:/xgcc/ppc/2_8_1/le/libgcc.a(eabi.o)(.got2+0x50): undefined reference to
`__EXCEPT_END__'



_______________________________________________
New CrossGCC FAQ: http://www.objsw.com/CrossGCC
_______________________________________________
To remove yourself from the crossgcc list, send
mail to crossgcc-request@cygnus.com with the
text 'unsubscribe' (without the quotes) in the
body of the message.