2

既存のプログラムを AIX から RedHat Linux に変換しています。Oracle Pro*C は、プリコンパイル時に問題を引き起こしています。cursesh.hのファイルでコンパイル エラーが発生しますbool typedef

プリコンパイル構成:

sys_include=($ORACLE_HOME/precomp/public,$ORACLE_HOME/precomp/syshdr,/usr/include,/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include)
ltype=short
define=__x86_64__

インクルード パスは、gcc コンパイラ パスと一致しています。

コンパイルエラーを解決するのを手伝ってください。他のプリプロセッサ シンボルを含める必要がありますか、または何か不足していsys_includeますか?

Pro*C/C++: Release 12.1.0.1.0 - Production on Thu Jan 23 10:29:54 2014

Copyright (c) 1982, 2013, Oracle and/or its affiliates.  All rights reserved.

System default option values taken from: /opt/oracle/product/12.1.0/precomp/admin/pcscfg.cfg

Syntax error at line 374, column 2, file /usr/include/curses.h:
Error at line 374, column 2 in file /usr/include/curses.h
        bool    _notimeout;     /* no time out on function-key entry? */
.1
PCC-S-02201, Encountered the symbol "_Bool" when expecting one of the 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,

PCSCFG.CFG:

$ more /opt/oracle/product/12.1.0/precomp/admin/pcscfg.cfg

sys_include=($ORACLE_HOME/precomp/public,/usr/include,/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include)
ltype=short
define=__x86_64__
4

1 に答える 1