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

About Library file

I created a library fuction having two fuction inside
1) Loop1()
2) Loop2()
when i will call the only one fucnction still the copiler will add the code for both,
below i am writing the content of the library file

#pragma SAVE
#pragma REGPARMS
extern void Loop1(void);
extern void Loop2(void);
#pragma RESTORE

void Loop1() { unsigned int i=0; while(i) { i--; }

}

void Loop2() { unsigned char i=0; while(i) { i--; }
how can i avoid this problem

void main() { Loop1(); Loop2(); while(1);

}

Parents
  • maybe, that depends on what you mean by "different library"

    you need to generate 10 different modules (source files) but they can all go into the same library

    here is a commandline example for generating a library with several modules

    if not exist amk.lib goto usliex
    del amk.lib
    :usliex
    c:\tools\keil\c51\bin\lib51 c amk.lib                                   >..\trash\trashbin
    c:\tools\keil\c51\bin\lib51 a MKmain.obj     to amk.lib >..\trash\trashbin
    c:\tools\keil\c51\bin\lib51 a MKutil.obj     to amk.lib >..\trash\trashbin
    c:\tools\keil\c51\bin\lib51 a MKj1708.obj    to amk.lib >..\trash\trashbin
    c:\tools\keil\c51\bin\lib51 a MKkbpr.obj     to amk.lib >..\trash\trashbin
    

    if you insist on doing it in the so called IDE, you will need to wait for someone else, I can not use that limited a tool.

    Erik

Reply
  • maybe, that depends on what you mean by "different library"

    you need to generate 10 different modules (source files) but they can all go into the same library

    here is a commandline example for generating a library with several modules

    if not exist amk.lib goto usliex
    del amk.lib
    :usliex
    c:\tools\keil\c51\bin\lib51 c amk.lib                                   >..\trash\trashbin
    c:\tools\keil\c51\bin\lib51 a MKmain.obj     to amk.lib >..\trash\trashbin
    c:\tools\keil\c51\bin\lib51 a MKutil.obj     to amk.lib >..\trash\trashbin
    c:\tools\keil\c51\bin\lib51 a MKj1708.obj    to amk.lib >..\trash\trashbin
    c:\tools\keil\c51\bin\lib51 a MKkbpr.obj     to amk.lib >..\trash\trashbin
    

    if you insist on doing it in the so called IDE, you will need to wait for someone else, I can not use that limited a tool.

    Erik

Children
No data