我为数据库连接创建了一个.pc代码。但是由于编译错误而失败。我正在执行以下命令:
proc connectivity.c
并获得输出为:
/Pro*C/C++: Release 12.1.0.1.0 - Production on Wed Jul 17 18:54:54 2019
Copyright (c) 1982, 2013, Oracle and/or its affiliates. All rights reserved.
System default option values taken from:
/u01/app2/ora12c/product/12.1.0/dbhome_1/precomp/admin/pcscfg.cfg
Error at line 33, column 11 in file /usr/include/stdio.h
# include <stddef.h>
..........1
PCC-S-02015, unable to open include file
Error at line 15, column 10 in file /usr/include/_G_config.h
#include <stddef.h>
.........1
PCC-S-02015, unable to open include file
Error at line 51, column 11 in file /usr/include/wchar.h
# include <stddef.h>
..........1
PCC-S-02015, unable to open include file
Error at line 50, column 10 in file /usr/include/libio.h
#include <stdarg.h>
.........1
PCC-S-02015, unable to open include file
Syntax error at line 307, column 3, file /usr/include/libio.h:
Error at line 307, column 3 in file /usr/include/libio.h
size_t __pad5;
..1
PCC-S-02201, Encountered the symbol "size_t" 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,
The symbol "enum," was substituted for "size_t" to continue.
我检查了所有头文件都存在。此问题来自某些库变量和函数。
答案 0 :(得分:0)
我在“ /u01/app2/ora12c/product/12.1.0/dbhome_1/precomp/admin/pcscfg.cfg ”文件中检查了sys_include变量。某些包含路径不可用。在服务器中找不到这些目录。我试图在编译期间包括路径(另一种方法是在pcscfg.cfg中更改路径)。
proc include=/usr/lib/gcc/x86_64-redhat-linux/4.8.2/include connection.pc
问题已解决。