We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Using uVision, I'm not getting .obj files produced by C51. A51 produces .obj files OK in the same project. The example projects do produce .obj files, so the cause is likely project settings. A .LST file contains:
NO OBJECT MODULE REQUESTED
; COMPILER INVOKED BY: ; C:\Program Files\Keil\C51\BIN\C51.EXE BANK2.C LARGE OPTIMIZE(SIZE) BROWSE NOINTPROMOTE DEFINE(RAA_Limits=0) DEBUG OBJECTEXTEND OBJECT(.\Obj\BANK2.obj)
Thanks.
"how do I tell uVision to compile then assemble?."
Read that manual page again - note steps 3 and 4...
Thanks for the quick reply! So uVision can do the compile - assemble sequence for me.
Step 1. Right click on the file in the Project Window  Files tab
Step 2. Choose Options for... to open Options  Properties page
When I do this, I see correct settings:
Generate Assembler SRC file - checked Assemble SRC file - checked
However, while .SRC files are produced, they don't get assembled. Finally the linker is called and fails complaining that the first obj can't be found. There are no compiler warnings or errors.
This is an inherited project - a banked program - which may contain some subtleties. There are no compiler warnings or errors.
The c source files start with: #pragma ORDER large OBJECTEXTEND DEBUG OPTIMIZE(6,SIZE) SRC
Solved :
The ticks in the checkboxes are slightly grey - so I recheck everything on the dialog so they show darker. I build the project and this time the compiler complains my #pragma lines are "respecified or conflicting", so I comment them out and voila! - obj files produced and linked.
Thanks so much Andy, Reinhard - for getting me there.