Forums | developer.brewmp.com Forums | developer.brewmp.com

Developer

Forums

Hello
When i use nmake command to make mod file from makefile i get this error

NMAKE : fatal error U1073: don't know how to make 'AEEModGen.o'
Stop.
Tool returned code: 0

Please help me.
Thanks in Advance
:) Arvind Verma

Set the path for AEEModGen.h and AEEModGen.c in the enviorment variables.

Set the path for AEEModGen.h and AEEModGen.c in the enviorment variables.

Thanks for reply but i still getting same error

Thanks for reply but i still getting same error

can you please send the make file that you are using?

can you please send the make file that you are using?

Please update your make file such that you have following two things in your makefile:
# 1
# --------------------
OBJS = AEEAppGen.o
#2
# --------------------
AEEModGen.o : AEEModGen.c
AEEModGen.o : $(BREWDIR)\inc\AEEModGen.h
# --------------------
The name of OBJS could be some other name in your makefile.
It would be great if you can paste your makefile here should the above solution does not work.
Cheers,
-Viren

Please update your make file such that you have following two things in your makefile:
# 1
# --------------------
OBJS = AEEAppGen.o
#2
# --------------------
AEEModGen.o : AEEModGen.c
AEEModGen.o : $(BREWDIR)\inc\AEEModGen.h
# --------------------
The name of OBJS could be some other name in your makefile.
It would be great if you can paste your makefile here should the above solution does not work.
Cheers,
-Viren

thanks for reply.
where should i put
AEEModGen.o:AEEModGen.c
..........

thanks for reply.
where should i put
AEEModGen.o:AEEModGen.c
..........

hi,
please tell me how to post my new thred

hi,
please tell me how to post my new thred

:eek:
If you can show us your makefile, maybe I can tell you exactly where it should go.

:eek:
If you can show us your makefile, maybe I can tell you exactly where it should go.

#=
# Name:
# $(TARGET).MAK
...................
#
# The above targets can be made with the following command:
#
# nmake /f $(TARGET).mak [target]
#
# Assumptions:
..........................
# 1. While building the application using this make file, the following warnings may be
# received. They can be safely ignored:
# "Warning: _divsi3.o does not support interworking, whereas .elf does not"
# "Warning: _dvmd_tls.o does not support interworking, whereas .elf does not"
# "Warning: cannot find entry symbol _start; defaulting to 00008000"
#
#==
#===
BREW_HOME = $(BREWDIR)
BREW_ADDINS = $(BREWADDINS)
GCC_HOME = $(GCCHOME)
GCC_LIBPATH = $(GCCLIBPATH)
TARGET = C:\PROGRA~1\BREWSD~1.3\Examples\MYFIRS~1\myfirstprg
OBJS = AEEModGen.o AEEAppGen.o myfirstprg.o GCCResolver.o
APP_INCLUDES = -I "$(BREWDIR)\inc" -I "$(BREWDIR)\inc"
#-------------------------------------------------------------------------------
# Target file name and type definitions
#-------------------------------------------------------------------------------
EXETYPE = elf # Target image file format
BINARY = bin
MODULE = mod # Downloadable module extension
#-----------------------------------------------------------------------
# Target compile time symbol definitions
# Tells the SDK source stuffs that we're building a dynamic app.
#-----------------------------------------------------------------------
DYNAPP = -DDYNAMIC_APP
#-----------------------------------------------------------------------
# Software tool and environment definitions
# (PREFIX needs to be set to the location of your gcc cross-compiler
# and binutils. STUBTOOL needs to be the path and filename of your
# copy of makestub)
#-----------------------------------------------------------------------
AEESRCPATH = $(BREW_HOME)\src
AEEINCPATH = $(BREW_HOME)\inc
GCC = $(GCC_HOME)\bin\arm-elf-gcc
LD = $(GCC_HOME)\bin\arm-elf-ld
DUMPTOOL = $(GCC_HOME)\bin\arm-elf-objdump
ELF2MODTOOLPATH = $(BREW_ADDINS)\common\bin
ELF2MODTOOL = $(ELF2MODTOOLPATH)\BREWelf2mod.exe
GCCRESOLVEPATH = $(BREW_ADDINS)\common\templates\src
#-----------------------------------------------------------------------
# Compiler optimization options
# -O0 disables compiler optimizations. Other options probably work as
# well. Set to taste.
#-----------------------------------------------------------------------
OPT = -O2
#-----------------------------------------------------------------------
# Compiler code generation options
# Add $(TARG) to the CODE line if you're building a Thumb binary (at
# the moment, this doesn't work).
#-----------------------------------------------------------------------
END = -mlittle-endian
TARG = -mthumb
CODE = $(END) -fshort-enums -fno-builtin
#-----------------------------------------------------------------------
# Include file search path options
# (change this to point to where the BREW SDK headers are located)
#-----------------------------------------------------------------------
INC = -I$(AEEINCPATH) -I$(GCC_LIBPATH)\include -I$(GCC_HOME)\arm-elf\include
#-----------------------------------------------------------------------
# Library search path options
# (You can change this to point to where your interworking version of
# libgcc.a resides)
#-----------------------------------------------------------------------
LIBDIRS = -L$(GCC_LIBPATH)
#-----------------------------------------------------------------------
# Nothing below here (except for the dependencies at the bottom of the
# file) should need to be changed for a reasonably normal compilation.
#-----------------------------------------------------------------------
#-----------------------------------------------------------------------
# Processor architecture options
# Sets the designated target processor for this applet.
# Currently, all BREW phones use the ARM 7t chip
#-----------------------------------------------------------------------
CPU = -mcpu=arm7tdmi
#-----------------------------------------------------------------------
# ARM Procedure Call Standard (APCS) options
# -fPIC sets posititon independent code. Other option: -fpic
# -mthumb-interwork enables switching between ARM and Thumb code
# -mapcs-frame runs on systems with the frame ptr. specified in the
# APCS
#-----------------------------------------------------------------------
ROPI =
INTRWK = -mthumb-interwork
APCS = -mapcs-frame $(ROPI) $(INTRWK)
#-----------------------------------------------------------------------
# Compiler output options
# -c sets object file output only
#-----------------------------------------------------------------------
OUT = -c
#-----------------------------------------------------------------------
# Compiler/assembler debug Options
# -g is the standard flag to leave debugging information in the
# object files.
#-----------------------------------------------------------------------
DBG = -g
#-----------------------------------------------------------------------
# Linker Options
# -o sets the output filename
#-----------------------------------------------------------------------
LINK_CMD = -Ttext 0 --emit-relocs -entry AEEMod_Load -o
LIBS = -lgcc
#-----------------------------------------------------------------------
# HEXTOOL Options
#-----------------------------------------------------------------------
BINFORMAT = -O binary
#-----------------------------------------------------------------------
# Compiler flag definitions
#-----------------------------------------------------------------------
CFLAGS0 = $(OUT) $(DYNAPP) $(CPU) $(APCS) $(CODE) $(DBG)
CFLAGS = $(CFLAGS0) $(INC) $(OPT)
#-----------------------------------------------------------------------
# Linker flag definitions
#-----------------------------------------------------------------------
LDFLAGS = $(LIBDIRS)
#-----------------------------------------------------------------------
# Default target
#-----------------------------------------------------------------------
default: $(TARGET).$(MODULE)
#-----------------------------------------------------------------------
# All target
#-----------------------------------------------------------------------
all: $(TARGET).$(MODULE)
#-----------------------------------------------------------------------
# C Code inference rules (plus a few others, for debugging purposes)
................
# on it, piping the results into foo.dump. This is slightly
# different from the output of "make foo.s", in general.
#-----------------------------------------------------------------------
%.o: %.c
$(GCC) $(CFLAGS) -o $@ $<
%.s: %.c
$(GCC) $(CFLAGS) -S $<
%.sp: %.c
$(GCC) $(CFLAGS) -S -dp $<
%.dump: %.o
$(DUMPTOOL) -D $< > $@
OBJ_CMD = -o # Command line option to specify output filename
SRC_FILE = $(@F:.o=.c) # Input source file specification
OBJ_FILE = $(OBJ_CMD) $(@F) # Output object file specification
.SUFFIXES :
.SUFFIXES : .o .dep .c
.c.o:
@echo ---------------------------------------------------------------
@echo OBJECT $(@F)
$(GCC) $(CFLAGS) $(OBJ_FILE) $(SRC_FILE)
@echo ---------------------------------------------------------------
.c.mix:
@echo ---------------------------------------------------------------
@echo OBJECT $(@F)
$(GCC) -S -fs $(CFLAGS) $(INC) $(OBJ_FILE) $<
@echo ---------------------------------------------------------------
{$(AEESRCPATH)}.c.o:
@echo ---------------------------------------------------------------
@echo OBJECT $(@F)
$(GCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(AEESRCPATH)\$(SRC_FILE)
@echo ---------------------------------------------------------------
{$(GCCRESOLVEPATH)}.c.o:
@echo ---------------------------------------------------------------
@echo OBJECT $(@F)
$(GCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(GCCRESOLVEPATH)\$(SRC_FILE)
@echo ---------------------------------------------------------------
#=======
# MODULE SPECIFIC RULES
#======
APP_OBJS = $(OBJS)
#-----------------------------------------------------------------------
# Targets for making the actual binary
#-----------------------------------------------------------------------
$(TARGET).$(MODULE) : $(TARGET).$(EXETYPE)
$(ELF2MODTOOL) $(TARGET).$(EXETYPE) $(TARGET).$(MODULE)
$(TARGET).$(EXETYPE) : $(APP_OBJS)
$(LD) $(LINK_CMD) $(TARGET).$(EXETYPE) $(LDFLAGS) \
$(APP_OBJS) $(LIBS) $(LINK_ORDER)
#-----------------------------------------------------------------------
# Cleanup
#-----------------------------------------------------------------------
clean:
rm -f $(APP_OBJS) $(TARGET).$(EXETYPE) $(TARGET).$(MODULE)
#-----------------------------------------------------------------------
# Object File Dependencies
# You may well want to add more dependencies here.
#-----------------------------------------------------------------------
............
# --------------------------------------------
# DEPENDENCY LIST, DO NOT EDIT BELOW THIS LINE
# --------------------------------------------
GCCResolver.o: C:\PROGRA~1\BREWAD~1\common\templates\src\GCCResolver.c

#=
# Name:
# $(TARGET).MAK
...................
#
# The above targets can be made with the following command:
#
# nmake /f $(TARGET).mak [target]
#
# Assumptions:
..........................
# 1. While building the application using this make file, the following warnings may be
# received. They can be safely ignored:
# "Warning: _divsi3.o does not support interworking, whereas .elf does not"
# "Warning: _dvmd_tls.o does not support interworking, whereas .elf does not"
# "Warning: cannot find entry symbol _start; defaulting to 00008000"
#
#==
#===
BREW_HOME = $(BREWDIR)
BREW_ADDINS = $(BREWADDINS)
GCC_HOME = $(GCCHOME)
GCC_LIBPATH = $(GCCLIBPATH)
TARGET = C:\PROGRA~1\BREWSD~1.3\Examples\MYFIRS~1\myfirstprg
OBJS = AEEModGen.o AEEAppGen.o myfirstprg.o GCCResolver.o
APP_INCLUDES = -I "$(BREWDIR)\inc" -I "$(BREWDIR)\inc"
#-------------------------------------------------------------------------------
# Target file name and type definitions
#-------------------------------------------------------------------------------
EXETYPE = elf # Target image file format
BINARY = bin
MODULE = mod # Downloadable module extension
#-----------------------------------------------------------------------
# Target compile time symbol definitions
# Tells the SDK source stuffs that we're building a dynamic app.
#-----------------------------------------------------------------------
DYNAPP = -DDYNAMIC_APP
#-----------------------------------------------------------------------
# Software tool and environment definitions
# (PREFIX needs to be set to the location of your gcc cross-compiler
# and binutils. STUBTOOL needs to be the path and filename of your
# copy of makestub)
#-----------------------------------------------------------------------
AEESRCPATH = $(BREW_HOME)\src
AEEINCPATH = $(BREW_HOME)\inc
GCC = $(GCC_HOME)\bin\arm-elf-gcc
LD = $(GCC_HOME)\bin\arm-elf-ld
DUMPTOOL = $(GCC_HOME)\bin\arm-elf-objdump
ELF2MODTOOLPATH = $(BREW_ADDINS)\common\bin
ELF2MODTOOL = $(ELF2MODTOOLPATH)\BREWelf2mod.exe
GCCRESOLVEPATH = $(BREW_ADDINS)\common\templates\src
#-----------------------------------------------------------------------
# Compiler optimization options
# -O0 disables compiler optimizations. Other options probably work as
# well. Set to taste.
#-----------------------------------------------------------------------
OPT = -O2
#-----------------------------------------------------------------------
# Compiler code generation options
# Add $(TARG) to the CODE line if you're building a Thumb binary (at
# the moment, this doesn't work).
#-----------------------------------------------------------------------
END = -mlittle-endian
TARG = -mthumb
CODE = $(END) -fshort-enums -fno-builtin
#-----------------------------------------------------------------------
# Include file search path options
# (change this to point to where the BREW SDK headers are located)
#-----------------------------------------------------------------------
INC = -I$(AEEINCPATH) -I$(GCC_LIBPATH)\include -I$(GCC_HOME)\arm-elf\include
#-----------------------------------------------------------------------
# Library search path options
# (You can change this to point to where your interworking version of
# libgcc.a resides)
#-----------------------------------------------------------------------
LIBDIRS = -L$(GCC_LIBPATH)
#-----------------------------------------------------------------------
# Nothing below here (except for the dependencies at the bottom of the
# file) should need to be changed for a reasonably normal compilation.
#-----------------------------------------------------------------------
#-----------------------------------------------------------------------
# Processor architecture options
# Sets the designated target processor for this applet.
# Currently, all BREW phones use the ARM 7t chip
#-----------------------------------------------------------------------
CPU = -mcpu=arm7tdmi
#-----------------------------------------------------------------------
# ARM Procedure Call Standard (APCS) options
# -fPIC sets posititon independent code. Other option: -fpic
# -mthumb-interwork enables switching between ARM and Thumb code
# -mapcs-frame runs on systems with the frame ptr. specified in the
# APCS
#-----------------------------------------------------------------------
ROPI =
INTRWK = -mthumb-interwork
APCS = -mapcs-frame $(ROPI) $(INTRWK)
#-----------------------------------------------------------------------
# Compiler output options
# -c sets object file output only
#-----------------------------------------------------------------------
OUT = -c
#-----------------------------------------------------------------------
# Compiler/assembler debug Options
# -g is the standard flag to leave debugging information in the
# object files.
#-----------------------------------------------------------------------
DBG = -g
#-----------------------------------------------------------------------
# Linker Options
# -o sets the output filename
#-----------------------------------------------------------------------
LINK_CMD = -Ttext 0 --emit-relocs -entry AEEMod_Load -o
LIBS = -lgcc
#-----------------------------------------------------------------------
# HEXTOOL Options
#-----------------------------------------------------------------------
BINFORMAT = -O binary
#-----------------------------------------------------------------------
# Compiler flag definitions
#-----------------------------------------------------------------------
CFLAGS0 = $(OUT) $(DYNAPP) $(CPU) $(APCS) $(CODE) $(DBG)
CFLAGS = $(CFLAGS0) $(INC) $(OPT)
#-----------------------------------------------------------------------
# Linker flag definitions
#-----------------------------------------------------------------------
LDFLAGS = $(LIBDIRS)
#-----------------------------------------------------------------------
# Default target
#-----------------------------------------------------------------------
default: $(TARGET).$(MODULE)
#-----------------------------------------------------------------------
# All target
#-----------------------------------------------------------------------
all: $(TARGET).$(MODULE)
#-----------------------------------------------------------------------
# C Code inference rules (plus a few others, for debugging purposes)
................
# on it, piping the results into foo.dump. This is slightly
# different from the output of "make foo.s", in general.
#-----------------------------------------------------------------------
%.o: %.c
$(GCC) $(CFLAGS) -o $@ $<
%.s: %.c
$(GCC) $(CFLAGS) -S $<
%.sp: %.c
$(GCC) $(CFLAGS) -S -dp $<
%.dump: %.o
$(DUMPTOOL) -D $< > $@
OBJ_CMD = -o # Command line option to specify output filename
SRC_FILE = $(@F:.o=.c) # Input source file specification
OBJ_FILE = $(OBJ_CMD) $(@F) # Output object file specification
.SUFFIXES :
.SUFFIXES : .o .dep .c
.c.o:
@echo ---------------------------------------------------------------
@echo OBJECT $(@F)
$(GCC) $(CFLAGS) $(OBJ_FILE) $(SRC_FILE)
@echo ---------------------------------------------------------------
.c.mix:
@echo ---------------------------------------------------------------
@echo OBJECT $(@F)
$(GCC) -S -fs $(CFLAGS) $(INC) $(OBJ_FILE) $<
@echo ---------------------------------------------------------------
{$(AEESRCPATH)}.c.o:
@echo ---------------------------------------------------------------
@echo OBJECT $(@F)
$(GCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(AEESRCPATH)\$(SRC_FILE)
@echo ---------------------------------------------------------------
{$(GCCRESOLVEPATH)}.c.o:
@echo ---------------------------------------------------------------
@echo OBJECT $(@F)
$(GCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(GCCRESOLVEPATH)\$(SRC_FILE)
@echo ---------------------------------------------------------------
#=======
# MODULE SPECIFIC RULES
#======
APP_OBJS = $(OBJS)
#-----------------------------------------------------------------------
# Targets for making the actual binary
#-----------------------------------------------------------------------
$(TARGET).$(MODULE) : $(TARGET).$(EXETYPE)
$(ELF2MODTOOL) $(TARGET).$(EXETYPE) $(TARGET).$(MODULE)
$(TARGET).$(EXETYPE) : $(APP_OBJS)
$(LD) $(LINK_CMD) $(TARGET).$(EXETYPE) $(LDFLAGS) \
$(APP_OBJS) $(LIBS) $(LINK_ORDER)
#-----------------------------------------------------------------------
# Cleanup
#-----------------------------------------------------------------------
clean:
rm -f $(APP_OBJS) $(TARGET).$(EXETYPE) $(TARGET).$(MODULE)
#-----------------------------------------------------------------------
# Object File Dependencies
# You may well want to add more dependencies here.
#-----------------------------------------------------------------------
............
# --------------------------------------------
# DEPENDENCY LIST, DO NOT EDIT BELOW THIS LINE
# --------------------------------------------
GCCResolver.o: C:\PROGRA~1\BREWAD~1\common\templates\src\GCCResolver.c

#=
# Name:
# $(TARGET).MAK
...................
#
# The above targets can be made with the following command:
#
# nmake /f $(TARGET).mak [target]
#
# Assumptions:
..........................
# 1. While building the application using this make file, the following warnings may be
# received. They can be safely ignored:
# "Warning: _divsi3.o does not support interworking, whereas .elf does not"
# "Warning: _dvmd_tls.o does not support interworking, whereas .elf does not"
# "Warning: cannot find entry symbol _start; defaulting to 00008000"
#
#==
#===
BREW_HOME = $(BREWDIR)
BREW_ADDINS = $(BREWADDINS)
GCC_HOME = $(GCCHOME)
GCC_LIBPATH = $(GCCLIBPATH)
TARGET = C:\PROGRA~1\BREWSD~1.3\Examples\MYFIRS~1\myfirstpr g
# The object files are already here so dont worry
OBJS = AEEModGen.o AEEAppGen.o myfirstprg.o GCCResolver.o
APP_INCLUDES = -I "$(BREWDIR)\inc" -I "$(BREWDIR)\inc"
#-------------------------------------------------------------------------------
# Target file name and type definitions
#-------------------------------------------------------------------------------
EXETYPE = elf # Target image file format
BINARY = bin
MODULE = mod # Downloadable module extension
#-----------------------------------------------------------------------
# Target compile time symbol definitions
# Tells the SDK source stuffs that we're building a dynamic app.
#-----------------------------------------------------------------------
DYNAPP = -DDYNAMIC_APP
# ...
#-----------------------------------------------------------------------
# Cleanup
#-----------------------------------------------------------------------
clean:
rm -f $(APP_OBJS) $(TARGET).$(EXETYPE) $(TARGET).$(MODULE)
#-----------------------------------------------------------------------
# Object File Dependencies
# You may well want to add more dependencies here.
#-----------------------------------------------------------------------
............
2
# --------------------
AEEModGen.o : AEEModGen.c
AEEModGen.o : $(BREWDIR)\inc\AEEModGen.h
AEEAppGen.o : AEEAppGen.c
AEEAppGen.o : $(BREWDIR)\inc\AEEAppGen.h
myfirstprg.o : myfirstprg.c
myfirstprg.o : myfirstprg.h
# --------------------
# --------------------------------------------
# DEPENDENCY LIST, DO NOT EDIT BELOW THIS LINE
# --------------------------------------------
GCCResolver.o: C:\PROGRA~1\BREWAD~1\common\templates\src\GCCResol ver.c

#=
# Name:
# $(TARGET).MAK
...................
#
# The above targets can be made with the following command:
#
# nmake /f $(TARGET).mak [target]
#
# Assumptions:
..........................
# 1. While building the application using this make file, the following warnings may be
# received. They can be safely ignored:
# "Warning: _divsi3.o does not support interworking, whereas .elf does not"
# "Warning: _dvmd_tls.o does not support interworking, whereas .elf does not"
# "Warning: cannot find entry symbol _start; defaulting to 00008000"
#
#==
#===
BREW_HOME = $(BREWDIR)
BREW_ADDINS = $(BREWADDINS)
GCC_HOME = $(GCCHOME)
GCC_LIBPATH = $(GCCLIBPATH)
TARGET = C:\PROGRA~1\BREWSD~1.3\Examples\MYFIRS~1\myfirstpr g
# The object files are already here so dont worry
OBJS = AEEModGen.o AEEAppGen.o myfirstprg.o GCCResolver.o
APP_INCLUDES = -I "$(BREWDIR)\inc" -I "$(BREWDIR)\inc"
#-------------------------------------------------------------------------------
# Target file name and type definitions
#-------------------------------------------------------------------------------
EXETYPE = elf # Target image file format
BINARY = bin
MODULE = mod # Downloadable module extension
#-----------------------------------------------------------------------
# Target compile time symbol definitions
# Tells the SDK source stuffs that we're building a dynamic app.
#-----------------------------------------------------------------------
DYNAPP = -DDYNAMIC_APP
# ...
#-----------------------------------------------------------------------
# Cleanup
#-----------------------------------------------------------------------
clean:
rm -f $(APP_OBJS) $(TARGET).$(EXETYPE) $(TARGET).$(MODULE)
#-----------------------------------------------------------------------
# Object File Dependencies
# You may well want to add more dependencies here.
#-----------------------------------------------------------------------
............
2
# --------------------
AEEModGen.o : AEEModGen.c
AEEModGen.o : $(BREWDIR)\inc\AEEModGen.h
AEEAppGen.o : AEEAppGen.c
AEEAppGen.o : $(BREWDIR)\inc\AEEAppGen.h
myfirstprg.o : myfirstprg.c
myfirstprg.o : myfirstprg.h
# --------------------
# --------------------------------------------
# DEPENDENCY LIST, DO NOT EDIT BELOW THIS LINE
# --------------------------------------------
GCCResolver.o: C:\PROGRA~1\BREWAD~1\common\templates\src\GCCResol ver.c

Thanks for reply.
Now i am getting this error:
OBJECT AEEModGen.o
C:\gnude\bin\arm-elf-gcc -c -DDYNAMIC_APP -mcpu=arm7tdmi -mapcs-frame -mthumb-interwork -mlittle-endian -fshort-enums -fno-builtin -g -IC:\Program Files\BREW SDK v2.1.3;\inc -IC:\gnude\lib\gcc-lib\arm-elf\3.3.1\include -IC:\gnude\arm-elf\include -O2 -o AEEModGen.o AEEModGen.c
arm-elf-gcc: cannot specify -o with -c or -S and multiple compilations
NMAKE : fatal error U1077: 'C:\gnude\bin\arm-elf-gcc' : return code '0x1'
Stop.
Tool returned code: 0

Thanks for reply.
Now i am getting this error:
OBJECT AEEModGen.o
C:\gnude\bin\arm-elf-gcc -c -DDYNAMIC_APP -mcpu=arm7tdmi -mapcs-frame -mthumb-interwork -mlittle-endian -fshort-enums -fno-builtin -g -IC:\Program Files\BREW SDK v2.1.3;\inc -IC:\gnude\lib\gcc-lib\arm-elf\3.3.1\include -IC:\gnude\arm-elf\include -O2 -o AEEModGen.o AEEModGen.c
arm-elf-gcc: cannot specify -o with -c or -S and multiple compilations
NMAKE : fatal error U1077: 'C:\gnude\bin\arm-elf-gcc' : return code '0x1'
Stop.
Tool returned code: 0