PRO*C compiling AIX 5.3
Date: Wed, 5 Mar 2008 12:41:42 +1100
Message-ID: <89B8BA31ACC4A64393D21E75B1B5DA0A4330DF@pweml001pp.pw.local>
In November, I posted a workaround here to this issue which I had run into and which had been previously referenced on this list. At that time I couldn't tell precisely which AIX release introduced the problem, but this morning I received an email from Christoph Br�ndle which ties it down to 5300-06 and identifies that Oracle 10g Release 2 still exhibits this problem on AIX 5.3.
KEN WALLIS You have posted a problem concerning the /usr/include/standards.h and its solution in the www.orafaq.com <http://www.orafaq.com/> mailing list last November.
I just run into the same problem today with AIX 5300-06 and Oracle 10.2.0.2.0. Apparently, Oracle 10g Release 2 is still not able to handle the #warning.
We also have an AIX 5300-05 machine, and here the problem does not occur. I was able to verify that the change in the standard.h file occurred with the patch from 5300-05 to 5300-06.
You might want to add this comment to your valued posting.
Best Regards
Christoph Br�ndle
Swisslog AG
PRO*C compiling AIX 5.3
2007-11-27 - By Ken Wallis
In July, Brian Shanblatt posted a query to this list regarding a problem with 9.2 Pro*C and AIX 5.3 for which there was no adequate answer (http://dba.5341.com/msg/81329.html).
However, his post turned up in a Google search when I ran into the same error with the same components and this helped me understand that I had a soluble problem which I have now overcome. I wanted to add some value by posting a follow up.
Brian, I recently ran into this same issue with a properly installed version of Oracle 'Pro*C/C++: Release 9.2.0.1.0' on AIX 5300-06. It appears that between AIX 5300-04 and 5300-06 IBM put a section into /usr/include/standards.h with this #warning line and Pro*C/C++ doesn't like it. This warning then appears to throw off the entire precompilation phase such that simple types such as size_t aren't defined and everything falls in a heap.
After unsuccessfully trying various fiddles involving DEFINE= in my proc invocation, I decided that rather than modify standards.h in /usr/include, I would make a local copy of standards.h in the directory with my source code and header files and edit that.
I changed IBM's:
#if defined(__IBM_PP_WARNING)
#warning The -qdfp option is required to process DFP code in headers.
#else
#error The -qdfp option is required to process DFP code in headers.
#endif
into:
#if !defined(__IBM_PP_WARNING)
#error The -qdfp option is required to process DFP code in headers.
#endif
My proc invocation already included INCLUDE=., so this local version of standards.h got pulled in instead of IBM's one and the proc command in the makefile then went through successfully.
HTH,
KEN WALLIS
Technical Consultant
PRO*C compiling AIX 5.3
2007-07-19 - By Brian Shanblatt
Hi Peter and all.
Thank you for your reply.
I just did an install of the 9.2.0.8 patchset, which upgraded and relinked everything.
The same problem occurred with pro*c on the standards.h file.
I then relinked the precompilers and the shared client libraries.
Same error.
It might have something to do with the AIX patchsets. Metalink lists a whole bunch, and I will have the sysadmins on the machine check that we have them.
Comments?
-- http://www.freelists.org/webpage/oracle-lReceived on Tue Mar 04 2008 - 19:41:42 CST