View previous topic :: View next topic
|
Author |
Message |
Nandananilchintala
New User
Joined: 25 Mar 2009 Posts: 19 Location: Hyderabad
|
|
|
|
Hi,
I am aware that the Precompiling of a program gives DBRM and NCAL as output and DBRM is for SQL statements. But i could not understand what actually NCAL contains or relates to. Please help |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Hello,
If my memory is still working - With NCAL set, external references are not resolved by the linker/binder. |
|
Back to top |
|
|
Nandananilchintala
New User
Joined: 25 Mar 2009 Posts: 19 Location: Hyderabad
|
|
|
|
Thank you dick scherrer for your reply....
can i assume that NCAL is the intermediate load module but not all the refereces resolved |
|
Back to top |
|
|
enrico-sorichetti
Superior Member
Joined: 14 Mar 2007 Posts: 10873 Location: italy
|
|
|
|
Quote: |
can i assume that NCAL is the intermediate load module but not all the refereces resolved |
NO
let' s straighten out the terminology....
a compiler does not generate a load module, it generates an object deck
old PL/1-COBOL
the db2 preprocessor generates the DBRM and an augmented source program
which afterwards goes thru the standard PL/1-COBOL COMPILATION which generates an OBJECT
which ( object ) gets processed by the linkage editor/binder to produce a load/executable module
the term NCAL has no place here
the newer PL/1 and COBOL compiler have an INTEGRATED preprocessor
at the end of the ONE step process You get the same things
You would have gotten at the end of the previous TWO steps process
the linkage editor step is the same in both cases
again the term NCAL has no place here
NCAL is a linkage editor/binder parameter which prevents the automatic resolution of external addresses ( called subroutines ) |
|
Back to top |
|
|
|