PrevPrev Go to previous topic
NextNext Go to next topic
Last Post 08/31/2016 4:21 PM by  steve finger
Does anyone know how the intermediate library code is used
 3 Replies
Sort:
You are not authorized to post a reply.
Author Messages
Ari
Senior Programmer/Analyst
CBJ
Veteran Member
(125 points)
Veteran Member
Posts:49


Send Message:

--
04/13/2013 7:40 PM
    When I run bldsh against a program that uses a library I can see that the library code gets copied into the final .cbl source. What I am wondering is how is the intermediate library code that gets created in the int directory used. It looks like some kind of compiled or compressed code. I am guessing that it is compressed code that gets created at compile time when a new or changed library is discovered. I would also guess that this compressed code gets uncompressed and inserted in the .cbl program before compile. I am assuming this is faster than copying the source library in. This might make compiling a whole product line reasonably quicker.
    Greg Moeller
    Private
    Private
    Veteran Member
    (3873 points)
    Veteran Member
    Posts:1377


    Send Message:

    --
    04/15/2013 1:17 PM
    Although I'm not an expert in how these are used, for the most part, you are correct... The int files are built at compile time, and the first thing that Infor support will ask you to do when you report a problem with a particular program is to first delete the int files, and then do a lstinvk -q prodline pgm followed by a qcompile prodline systemcode pgm.
    The int files are used as a kind of cache specifically to produce a speedier compile, but when support asks you to delete them, to make sure that you are pulling in any updated library files, I don't see much of a point to them.
    Ari
    Senior Programmer/Analyst
    CBJ
    Veteran Member
    (125 points)
    Veteran Member
    Posts:49


    Send Message:

    --
    04/15/2013 1:51 PM
    Yes, I would think that for programs that have any libraries that need to be recompiled there would be little or no speed advantage. It would only be speedier for large compiles that don't need very many of the libraries compiled or compressed. 
    steve finger
    ICS - Senior Consultant
    Infor
    Advanced Member
    (88 points)
    Advanced Member
    Posts:30


    Send Message:

    --
    08/31/2016 4:21 PM
    the ".int" files are used by the animator (which in lawsonese is called the debugger/cobdebug/batchdebug) The animator uses the .int file to run as the program is interpreted instead of compiled. In fact i would venture a guess that ".int" could be shorthand for interpreted instead of intermediate. Note that error checking is much more rigorous when animated - you can get a runtime error n the animator (OR a file that was compiled with the debug option and a .gnt file is not created) for example....a numeric field that has spaces in it will not cause an error when compiled....the animator will freak out and abend
    You are not authorized to post a reply.