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

Compiler not producing OBJ files

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.

Parents Reply Children
  • 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.