- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Oracle version - 10.2.0.1.0
Pro*C/C++: Release 10.2.0.1.0
AIX version - 5.3
我无法编译并出现以下错误。
Syntax error at line 135, column 2, file /usr/include/standards.h:
Error at line 135, column 2 in file /usr/include/standards.h
#warning The -qdfp option is required to process DFP code in headers.
.1
PCC-S-02014, Encountered the symbol "warning" when expecting one of the following:
a numeric constant, newline, define, elif, else, endif,
error, if, ifdef, ifndef, include, line, pragma, undef,
an immediate preprocessor command, a C token,
The symbol "newline," was substituted for "warning" to continue.
Syntax error at line 382, column 3, file mydb.h:
Error at line 382, column 3 in file mydb.h
time_t timestamp;
..1
PCC-S-02201, Encountered the symbol "time_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 "time_t" to continue.
Error at line 0, column 0 in file my_db.pc
PCC-F-02102, Fatal error while doing C preprocessing
make: *** [libdb.a] Error 1
有什么解决办法吗?
sys_include=(/usr/include)
CODE=ANSI_C
parse=partial
sqlcheck=full
sys_include=/usr/include
sys_include=/usr/include/sys
sys_include=/usr/include/linux
include=$(ORACLE_HOME)/precomp/public
include=$(ORACLE_HOME)/precomp/include
include=$(ORACLE_HOME)/oracore/include
include=$(ORACLE_HOME)/oracore/public
include=$(ORACLE_HOME)/rdbms/include
include=$(ORACLE_HOME)/rdbms/public
include=$(ORACLE_HOME)/rdbms/demo
ltype=short
define=__64BIT__
define=_IBM_C
define=_LONG_LONG
完全相同的代码在 AIX 5.2 中没有问题。问题出现在 AIX 5.3 中。
最佳答案
报告的第一个错误 PCC-S-02014 实际上是重要的错误。 Pro*C 预编译器忽略一些 C 预处理器指令,但不是 #warning
- 它不理解它,并且不认为 warning
是一个有效的东西一个#
。
您可以使用 ORA_PROC
宏来避免在此阶段包含有问题的头文件。假设先前答案中给出的位置是正确的,您可以像这样从预处理器中“隐藏”#include
:
#ifndef ORA_PROC
#include <standards.h>
#endif
当然,您可能不会直接包含该文件,因此您可能必须计算出层次结构以查看您真正需要在源文件中排除哪个文件。在您的情况下,您似乎可以将 mydb.h
隐藏在 my_db.pc
文件中,但这似乎过分了;最好将 standard.h
隐藏在您的 mydb.h
文件中 - 基本上排除您可以排除的最少代码量。不过,我根据错误消息推测,您可能有更多层。
这包含在 advanced topics 中Pro*C/C++ 文档的一部分。
这比复制和编辑系统头文件更容易,也比编辑原始文件安全得多。当然,它还允许您添加注释来解释正在发生的事情。
关于c++ - PCC-F-02102,在 AIX 5.3 中进行 C 预处理时出现 fatal error ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11680377/
我在AIX上使用shell脚本。 我已经使用chmod授予了执行权限 不过,我收到以下错误: ksh: ./getcwd.exe: 0403-006 Execute permission denied
我找不到 objdump IBM AIX 5.1 机器中的命令。实际上,我想从 AIX 中生成的库中获取汇编指令(反汇编)。 Linux 有 objdump命令和solaris dis命令来执行此操作
我需要在 AIX 环境中编写一个 C 程序,它会给我进程名称。 我可以根据 pid 获取 pid 但不能获取进程名称。 aix 环境中可用的任何特定系统调用? 谢谢 最佳答案 getprocs 很可能
在 AIX 上,我会运行: ar -X32 -t libdb2.a 并检查输出以确定存档中是否有 32 位对象。与 -X64 类似,用于检查 64 位对象。但是,如果我在另一个平台上,并且需要检查存档
我们需要将许多使用 Sun JDK 构建并在 Solaris 10 中的 sun JRE 上运行的 Java 应用程序迁移到 AIX。 我们担心该应用程序在 IBM J9 JRE 上的运行情况相同。
我有一些类似于以下的代码: #include #include #include #include #include #include #include #include #inclu
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我使用的是 AIX 5.3,而且我对该操作系统完全是菜鸟。我想知道 AIX 上是否有类似 inotify 的东西,以便可以监视目录和文件的更改而不是轮询。我将从 Java 中执行此操作,因此使用 Ja
AIX 中的交换信息命令:lsps -a AIX 中的交换信息输出: Page Space Physical Volume Volume Group Size %Used Acti
我有手动运行良好的脚本,但在通过 cronjob 运行时没有获得所需的输出。如果脚本有任何问题,请告诉我。 #!/usr/bin/ksh file1=$(find *-* -mtime 1) file
我正在尝试在 IBM AIX 中编译一些 C 代码,但它似乎在函数指针方面存在一些严重问题。 以下是一些无法编译的代码: typedef int (*strategy_fn)(const unsign
我有一个 C 程序 hello.c。我创建了一个共享对象 hello.so。 hello.c 和 hello.so 分别位于目录/u/grv/program/hello.c/u/grv/objects
当运行使用 -pthread 编译的代码时抛出 C++ 异常时,我们会中止。 平台:AIX 5.3 技术等级 8编译器:gcc 3.4.6链接器:AIX 链接器 1.65.2.4 测试代码: // e
我从 Centos 6 通过 ssh 连接到 AIX 5.3。AIX 和 Centos 上的 shell 是 bash。当我在 shell 中按“Home”、“End”、“PgUp”、“PgDn”时,
我运行了 lparstat 命令并得到了这个输出。需要知道要解析哪个字段以获得总体 CPU 分配、CPU 使用率、此 AIX 服务器的空闲 CPU 以及如何解析该信息。 System configur
谁能推荐可用于以编程方式检查内存使用情况的 AIX 系统调用?我正在使用一个大型多线程 C++ 应用程序,该应用程序当前由于存在大量无限的内存缓存而内存不足(在 AIX 6.1 上使用 32 位大内存
我在 AIX 6.1 上运行此代码 while(true) { int a = rand(); //generate a random integer value void* test
xmalloc只有当我编写AIX内核扩展时才能在进程环境中使用。 AIX 中中断环境可以调用哪些内存分配函数? 谢谢。 最佳答案 网络内存分配例程。查看/usr/include/net/net_mal
我在 AIX 上工作,有一个进程不断崩溃。我从未检查过核心文件,如果可能的话,我希望得到一些指导。我正在使用 dbx。我如何才能 (a) 确保核心文件到达我希望它到达的位置,以及 (b) 在崩溃之前查
通过执行一个简单的循环创建线程java程序,当我使用 -Xmx2048M 时,AIX 的线程计数限制约为 900,当我将该参数减少到 -Xmx1024M 时,线程计数限制增加到 2000 左右。 ul
我是一名优秀的程序员,十分优秀!