Have been struggling since 2 days while precomipiling the PRO*C code.
Encountering below error. I have tried adding code=ansi
in my pcscfg.cfg
file. and also added the precompiler flag CODE=ANSI_C
. but no luck.
System default option values taken from: /opt/oracle/product/19c/dbhome_1/precomp/admin/pcscfg.cfg
Syntax error at line 450, column 2, file /usr/include/curses.h:
Error at line 450, 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,
Error at line 0, column 0 in file caomenu.pc
PCC-F-02102, Fatal error while doing C preprocessing
below are the RHEL and kernel versions respectively.
[root@azureRHEL MenuPrograms]# cat /etc/redhat-release
Red Hat Enterprise Linux release 8.7 (Ootpa)
[root@azureRHEL MenuPrograms]#
[root@azureRHEL MenuPrograms]# uname -sr
Linux 4.18.0-193.75.1.el8_2.x86_64
[root@azureRHEL MenuPrograms]#
And here are the current entries in pcscfg.cfg
file.
[root@azureRHEL MenuPrograms]# cat /opt/oracle/product/19c/dbhome_1/precomp/admin/pcscfg.cfg
sys_include=($ORACLE_HOME/precomp/public,/usr/include,/usr/lib/gcc/x86_64-redhat-linux/4.1.2/include,/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include,/usr/lib/gcc/x86_64-redhat-linux/4.4.4/include,/usr/lib64/gcc/x86_64-suse-linux/4.8/include,/usr/lib/gcc/x86_64-redhat-linux/4.8.5/include)
sys_include=/usr/lib/gcc/x86_64-redhat-linux/8/include/
ltype=short
define=__x86_64__
MODE=ANSI
lines=yes
SQLCHECK=SEMANTICS
[root@azureRHEL MenuPrograms]#
I have done the research and tried all possible previously given solutions. But none worked. Could some one guide me to resolve this? so that,i could precompile my code successfully.
CodePudding user response:
I could resolve this issue by changing the below line
#define NCURSES_ENABLE_STDBOOL_H 1
from curses.h
file to
#define NCURSES_ENABLE_STDBOOL_H 0