2 Replies Latest reply: Sep 13, 2012 7:06 AM by rukbat RSS

    could not compile any .PC file

    Raymund
      Hello All,

      These are the steps we've followed in pre-compilation

      1. cd $MMHOME/oracle/proc/src -or-cd /u01/oracle/retail/rms13batch/oracle/proc/src
      2. (backup posdnld.pc posdnld.pc.09042012 and move to patched/ folder)
      3. upload posdnld.pc to $MMHOME/oracle/proc/src
      4. make -f rms.mk posdnld

      -- then, errors appeared here --

      Syntax error at line 72, column 26, file /usr/include/gconv.h:
      Error at line 72, column 26 in file /usr/include/gconv.h
      unsigned char **, size_t *, int, int);
      .........................1
      PCC-S-02201, Encountered the symbol "size_t" when expecting one of the following
      :

      ... 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 "enum," was substituted for "size_t" to continue.

      Syntax error at line 88, column 7, file /usr/include/gconv.h:
      Error at line 88, column 7 in file /usr/include/gconv.h
      size_t *);
      ......1
      PCC-S-02201, Encountered the symbol "size_t" when expecting one of the following
      :

      ... 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 "enum," was substituted for "size_t" to continue.

      Syntax error at line 97, column 6, file /usr/include/gconv.h:
      Error at line 97, column 6 in file /usr/include/gconv.h
      size_t *);
      .....1
      PCC-S-02201, Encountered the symbol "size_t" when expecting one of the following
      :

      ... 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 "enum," was substituted for "size_t" to continue.

      Syntax error at line 106, column 3, file /usr/include/gconv.h:
      Error at line 106, column 3 in file /usr/include/gconv.h
      __gconv_trans_fct __trans_fct;
      ..1
      PCC-S-02201, Encountered the symbol "__gconv_trans_fct" when expecting one of th
      e following:

      char, const, double, enum, float, int, long, ulong_varchar,
      OCIBFileLocator OCIBlobLocator, OCIClobLocator, OCIDateTime,
      OCIExtProcContext, OCIInterval, OCIRowid, OCIDate, OCINumber,
      OCIRaw, OCIString, short, signed, sql_context, sql_cursor,
      struct, union, unsigned, utext, uvarchar, varchar, void,
      volatile, a typedef name,

      I already did some research regarding this issue, but all of them suggesting that the system header file location has to be included in sys_include parameter so that during precompilation it can be accessed.

      Below is the content of our pcscfg.cfg file;

      sys_include=(/usr/include,/usr/include/linux,/usr/lib/gcc/x86_64-redhat-linux/3.4.3/include,$ORACLE_HOME/rdbms/public,$ORACLE_HOME/precomp/public)
      include=($ORACLE_HOME/precomp/public)
      include=($ORACLE_HOME/rdbms/demo)
      include=($ORACLE_HOME/plsql/public)
      include=($ORACLE_HOME/rdbms/public)
      ltype=short
      define=__x86_64__
      define=_LONG_LONG
      define=__64BIT__ltype=short
      userid=rms13dev/rms13dev@RMSDEV

      ProC version
      -- Pro*C/C++: Release 10.2.0.3.0

      OS
      -- Red Hat Enterprise Linux AS release 4 (Nahant Update 8)


      My question is, did I missed declared other system header file path in sys_include parameter?

      Thanks in advance...

      Regards
      Raymund