Home » Developer & Programmer » Precompilers, OCI & OCCI » PCC-S-02201, Encountered the symbol "ntohll" when expecting one of the following
PCC-S-02201, Encountered the symbol "ntohll" when expecting one of the following [message #94489] Mon, 20 December 2004 09:38 Go to next message
Rosario
Messages: 2
Registered: December 2004
Junior Member
Hi,

I am posting a solution. I was getting the following error messages while compiling using Oracle 8.1.7.4 precompiler on AIX5.l system:

Syntax error at line 280, column 10, file /usr/include/netinet/in.h:

Error at line 280, column 10 in file /usr/include/netinet/in.h

uint64_t ntohll(uint64_t);

.........1

PCC-S-02201, Encountered the symbol "ntohll" when expecting one of the following

:

; , = ( [[

The symbol ";" was substituted for "ntohll" to continue.

Syntax error at line 281, column 10, file /usr/include/netinet/in.h:

Error at line 281, column 10 in file /usr/include/netinet/in.h

uint64_t htonll(uint64_t);

.........1

PCC-S-02201, Encountered the symbol "htonll" when expecting one of the following

:

; , = ( [[

The symbol ";" was substituted for "htonll" to continue.

Syntax error at line 79, column 11, file ssedstis.pc:

Error at line 79, column 11 in file ssedstis.pc

xSaveArea gxSaveArea;

..........1

PCC-S-02201, Encountered the symbol "gxSaveArea" when expecting one of the follo

wing:

; , = ( [[

The symbol ";" was substituted for "gxSaveArea" to continue.

Error at line 0, column 0 in file ssedstis.pc

PCC-F-02102, Fatal error while doing C preprocessing

make: 1254-004 The error code from the last command is 1.

 

Stop.

 

It turns out that the problem is that the Oracle 8.1.7.4 precompiler parses the AIX 5.l header files without knowing the default defines that are set for the compiler. Hence the default defines set by the C compiler need to be passed on to the precompiler. The solution is to set DEFINE=__64BIT__ or DEFINE=_LONG_LONG in the precompilation options. We added this setting to our makefile, but there are other ways to set precompilation options as needed. This worked for us!
Must DEFINE=_64BIT_ in the precompiler options [message #94496 is a reply to message #94489] Tue, 21 December 2004 08:34 Go to previous message
Rosario
Messages: 2
Registered: December 2004
Junior Member
Since DEFINE is a precompiler option, in order to pass the default defines to the Oracle 8.1.7.4 precompiler when using IBM AIX5.l header files, you can:

1> proc xxx DEFINE=xxxx
2> Add it to pcscfg.cfg
3> Add it to the make file "PROCFLAGS" ...
4> You can even pass it to the make utility in the commandline itself
make -f demo_proc.mk build EXE=mysample1 OBJS=mysample1.o PROCFLAGS="DEFINE=__64BIT__"
Previous Topic: error PCC-F-02066
Next Topic: why and when we have to use nullset in pro*c
Goto Forum:
  


Current Time: Fri Mar 29 00:57:13 CDT 2024