Page 1 of 1

Compile error

Posted: Fri Oct 08, 2010 12:22 pm
by Tony
Hi

After downloading the new release 2.1.5 I'm having some probs.

Everything worked fine before so I can only put it down to the upgrade.

Problem seems to be as though the pre-processor is not working anymore.
When compiling it's not expanding all the /includes.

So now after I've "successfully" compiled, I get a
Error message CPF4103 appeared during OPEN for file xxx message when launching.

I'm halfway through my 30day trial and this is not what I need now.

Please help ASAP.
thanks

I'm on V6R1

Re: Compile error

Posted: Fri Oct 08, 2010 3:18 pm
by Rob
There have been no changes to the way the Pre-processor handles includes or copy source members for some time. Are you sure this is the cause of the problem? After compiling with the pre-processor, you can view the "pre-processed" RPG code in QTEMP/QPUILESRC, YOURMEMBER. This member should contain all expanded includes as long as they were found in the library list.

CPF4103 would indicate that the program was compiled without the pre-precessor.

Try this:
  • clear QTEMP
    re-compile using the pre-processor (eg PUIBNDRPG)
    check for QTEMP/QPUILESRC if this was not created, the pre-processor did not run.

Re: Compile error

Posted: Fri Oct 08, 2010 3:34 pm
by RussCraig
How are you compiling? With PUIBNDRPG, or with exit points using CRTBNDRPG and DEFINE(PROFOUNDUI)?

Since I moved to v7.1, I've compiled using exit points. You would need to run the ADDPUIEXIT program, then prompt option 14 on the desired member, making sure you have DEFINE(PROFOUNDUI) on the command line when you prompt it. Never ran into any compile/run issues this way.

Hope that helps.
-RC

Re: Compile error

Posted: Fri Oct 08, 2010 3:41 pm
by Tony
I'm using PUIBNDRPG with DEFINE(PROFOUNDUI).
Got the h spec define as well.

Like I said, it's like the pre-processor has just switched off since the upgrade.

Nothing is being created in qtemp.

Everything was working fine before the upgrade.

Re: Compile error

Posted: Fri Oct 08, 2010 3:54 pm
by Rob
Make sure you are specifying the source library (not *LIBL)

PUIBNDRPG PGM(MYLIB/MYMEMBER) SRCFILE(MYLIB/QRPGLESRC)

Re: Compile error

Posted: Fri Oct 08, 2010 3:55 pm
by Tony
Right, I found the problem.

Using:
PROFOUNDUI/PUIBNDRPG PGM(TONYPROF/TEST1SH) SRCFILE(*LIBL/QRPGLESRC) DEFINE(PROFOUNDUI)

seems to run without the pre-processor.

If I use:
PROFOUNDUI/PUIBNDRPG
PGM(TONYPROF/TEST1SH) SRCFILE(TONYPROF/QRPGLESRC)
DEFINE(PROFOUNDUI)

it works.

I just dont understand why.
TONYPROF is the first lib in my liblist aswell.

Re: Compile error

Posted: Fri Oct 08, 2010 4:09 pm
by Rob
At the moment, the pre-processor will not search for the source member in the library list. It needs to know the actual library.

This is something we have on our "to do" list.