This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

GNU makefile --- Linker error

I'm trying to start using the GNU make utility (http://www.gnu.org/software/make/make.html) to build my C167 projects (there is a Win32 executable already built and available for download on another site, and the doc's are great). I copied the assembler, compiler and linker strings right out of the project otpions on the KEIL IDE and pasted them into the appropriate places in my makefile.

If I do a build all via the KEIL IDE, my project builds with zero errors and zero warnings, and I get a HEX file that I can load into my target and run.

However, if I delete the object files and run the make utility, the ASM files assemble with zero errors and zero warnings, the C files compile with zero errors and zero warnings, however the linker aborts with this error:

*** FATAL ERROR 220: INVALID INPUT MODULE
MODULE: C:\KEIL\C166\LIB\C167HL.LIB <----->

FWIW, I am using the HLARGE memory model, so it looks like the compiler & assembler did get the model correctly from the text I copied from the control strings via the project options dialog box. The memory model is not mentioned in the linker control strings.

I redirected the output of the make utility to a text file and then closely examined what was sent to the linker on the command line (via the make utility), and it looks exactly like the linker control string in the project options dialog box's linker control string window.

Anybody have a clue as to why I might be getting this error message from the linker?

Confused...
Dave.