#1952 - regularkid - Sun Jan 26, 2003 6:52 pm
Hi. I have a problem using the -mthumb-interwork compiler option. Ok, heres what I want to do: I need to make a pixel plot function in assembly that plots 16bits at a time, so that means I need to use THUMB assembly. Ok, this is fine, so that means that when I compile my code I need to add the -mthumb-interwork compiler option because the main C code is in ARM and without this option I cant switch between THUMB and ARM (i think). So here is what my compiler rule for my makefile looks like:
Everything compiles fine, but when I go to link it gives me tons of warnings saying:
What am I doing wrong? Thanks!
_________________
- RegularKid
Code: |
CFLAGS = -c -g -Wall -mthumb-interwork -O2 ASFLAGS = -mthumb-interwork LFLAGS = -Tbss 0x03000000 -Tdata 0x08000000 -Ttext %.o : %.c $(CC) $(CFLAGS) $< -o $@ %.o : %.s $(AS) $(ASFLAGS) $< -o $@ $(GAME).elf : $(OBJS) ld -o $(GAME).elf $(LFLAGS) $(OBJS) |
Everything compiles fine, but when I go to link it gives me tons of warnings saying:
Code: |
/cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: _divsi3.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: _dvmd_tls.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: __main.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: unwind-dw2-fde.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: abort.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: atexit.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: impure.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: malloc.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: mallocr.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: mlock.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: sbrkr.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: signal.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: signalr.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: strlen.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: syscalls.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: vsprintf.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: errno.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: freer.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: vfprintf.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: wsetup.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: dtoa.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: fflush.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: findfp.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: fvwrite.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: fwalk.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: locale.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: makebuf.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: mbtowc_r.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: memchr.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: memcpy.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: memmove.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: memset.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: mprec.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: s_isinf.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: s_isnan.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: stdio.o does not support interworking, whereas Game.elf does /cygdrive/c/DEVKITADV/BIN/../lib/gcc-lib/arm-agb-elf/3.0.2/../../../../arm-agb-elf/bin/ld: Warning: strcmp.o does not support interworking, whereas Game.elf does |
What am I doing wrong? Thanks!
_________________
- RegularKid