We're running Oracle 11g and trying to compile Pro*C code. Our makefile executes the following steps: (1) GNU C preprocessor, (2) Oracle Pro*C precompiler, (3) GNU C compiler. When the Pro*C precompiler runs, we encounter the following error... Syntax error at line 109, column 8, file /usr/appl/cad/prod/lib/pcc/Connect.pc: Error at line 109, column 8 in file /usr/appl/cad/prod/lib/pcc/Connect.pc __const unsigned char **, __const unsigned char *, .......1 PCC-S-02201, Encountered the symbol "__const" when expecting one of the followin g: ... auto, char, const, double, enum, float, int, long, ulong_varchar, OCIBFileLocator OCIBlobLocator, OCIClobLocator, OCIDateTime, OCIExtProcContext, OCIInterval, OCIRowid, OCIDate, OCINumber, OCIRaw, OCIString, register, short, signed, sql_context, sql_cursor, static, struct, union, unsigned, utext, uvarchar, varchar, void, volatile, a typedef name, exec oracle, exec oracle begin, exec, exec sql, exec sql begin, exec sql type, exec sql var, The symbol "exec," was substituted for "__const" to continue. We've traced this back to gconv.h in which there are several function typedefs containing parameters of type __const. Earlier on, we found that __const is defined within an #ifdef/#else/#endif block in /usr/include/cdefs.h. In order to allow __const to be defined, we had to add a -U__GNUC__ switch to the cpp command (which, as stated earlier, runs before the Pro*C precompiler). However, we are running gcc and question whether we really should be undefining __GNUC__. Could someone offer some advice regarding this issue?
This is not a place to get educated on using compilers. Unless you can provide a small, self-contained example for something that is wrong in glibc alone nothing will happen. Who knows what horrible hacks Oracle deploys.
I've subsequently received the advice I need to solve the problem. But for future reference, what is the appropriate place to post this issue?
There are countless mailing lists and news groups for Linux programming. But since it's most likely an Oracle problem start with them
It turned out to be an issue with how I was invoking gcc and cpp rather than an Oracle issue. Thanks.
For user help with glibc in particular, you can refer to the libc-help@sourceware.org mailing list.