You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle Linux 8.6下19c Pro*C编译报错PCC-S-02014求助

Pro*C编译PCC-S-02014错误的解决思路
  • 调整系统头文件包含顺序
    Pro*C预编译器对C语言扩展语法的兼容性有限,将Oracle自带的头文件放在最优先级,避免系统头文件中的...(可变参数)、##(宏连接符)等GCC扩展语法被预编译器误判为错误。修改pcscfg.cfg的sys_include配置:

    sys_include=($ORACLE_HOME/precomp/public,/usr/lib/gcc/x86_64-redhat-linux/8/include,/usr/include)
    
  • 补充GCC环境宏定义
    在pcscfg.cfg中添加GCC相关宏定义,让预编译器识别当前为GCC环境,跳过对扩展语法的严格检查:

    define=__GNUC__
    define=__GNUC_MINOR__
    define=__GNUC_PATCHLEVEL__
    
  • 排除冲突的系统头文件
    如果上述调整无效,直接排除报错的sys/cdefs.h文件,可在编译命令中添加参数:

    proc iname=mytest.pc exclude=/usr/include/sys/cdefs.h
    

    也可以在pcscfg.cfg中新增exclude=/usr/include/sys/cdefs.h配置项。

  • 核对环境一致性
    对比正常运行的全新虚拟机,检查ORACLE_HOME、PATH、LD_LIBRARY_PATH等环境变量是否完全一致,重点确认GCC版本必须为同版本的8.x系列。

  • 验证预编译器版本
    执行proc --version确认当前Pro*C预编译器版本,确保与正常虚拟机的版本完全匹配,避免版本差异导致的语法兼容问题。

内容的提问来源于stack exchange,提问作者StefanG

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 20:10:30