Header files not recognized in PROC compiler 12.2 even with SYSHDRS in mkmf of HP-U

I am using the Pro*C 12.2 precompiler.

I have a .c file which is using free(), but string.h is not included in the .c, .h or .pc files.

The Makefile has SYSHDRS= /usr/include other files, but not string.h.

The executable after compilation is working in an Oracle 11g environment, but not in 12.2.

Note that #include <string.h> is not there in 11g and 12.2, also in the .c file. But it works for Oracle 11g and produces a memory fault for 12.2.

In the Makefile the only difference is the ORACLE_HOME path — in the former it is pointing to 11g and in the latter to 12.2.

Is there any difference between the 11g and 12.2 precompilers related to header files? For both environments string.h is present in /usr/include.

A solution I found was to include string.h in the .pc file. But this is only a temporary solution. Other .pc files are also missing signal.h, and the resulting executable produces a memory fault for 12.2.

Please guide me!

Upvotes: 0

Views: 117

Answers (0)

Related Questions