2006-8-5 10:53
redj
solaris环境下make出错,请高手指点迷经
我目前的环境
solaris10,
oracle9i for solaris,
sunstudio11
安装在sun v480的服务器上。
把客户的程序发布上,运行make出错,希望能得到高手指点。
错误信息如下:
----------------------------------------------------------------------------------------------------
$ /usr/ccs/bin/make
rm -f pgb01200.o
rm -f /export/cpp/bin/pgb01200
/opt/oracle/product/9.2.0/bin/proc INAME=pgb01200.pc ONAME=pgb01200.c INCLUDE=/e
xport/cpp/inc INCLUDE=/export/cpp/sqlinc MODE=ANSI LINES=YES CODE=ansi_c
Pro*C/C++: Release 9.2.0.1.0 - Production on Sat Aug 5 10:44:23 2006
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
System default option values taken from: /opt/oracle/product/9.2.0/precomp/admin
/pcscfg.cfg
[color=Red]Syntax error at line 13, column 16, file /export/cpp/inc/scom.h:
Error at line 13, column 16 in file /export/cpp/inc/scom.h
extern jmp_buf retcnt_jb;
...............1
PCC-S-02201, Encountered the symbol "retcnt_jb" when expecting one of the follow
ing:
; , = ( [
The symbol ";" was substituted for "retcnt_jb" to continue.[/color]
Syntax error at line 176, column 2, file pgb01200.pc:
Error at line 176, column 2 in file pgb01200.pc
SESYSCTL h_sesysctl;
.1
PCC-S-02201, Encountered the symbol "SESYSCTL" when expecting one of the followi
ng:
auto, char, const, double, enum, extern, float, int, long,
ulong_varchar, OCIBFileLocator OCIBlobLocator,
OCIClobLocator, OCIDateTime, OCIExtProcContext, OCIInterval,
OCIRowid, OCIDate, OCINumber, OCIRaw, OCIString, register,
short, signed, sql_context, sql_cursor, static, struct,
typedef, union, unsigned, utext, uvarchar, varchar, void,
volatile, a typedef name, a precompiled header, exec oracle,
exec oracle begin, exec, exec sql, exec sql begin,
exec sql end, exec sql type, exec sql var, exec sql include,
The symbol "enum," was substituted for "SESYSCTL" to continue.
Syntax error at line 431, column 2, file pgb01200.pc:
Error at line 431, column 2 in file pgb01200.pc
GTUMEMINFOCPP h_gtumeminfocpp;
*/
.1
PCC-S-02201, Encountered the symbol "GTUMEMINFOCPP" when expecting one of the fo
llowing:
auto, char, const, double, enum, extern, float, int, long,
ulong_varchar, OCIBFileLocator OCIBlobLocator,
OCIClobLocator, OCIDateTime, OCIExtProcContext, OCIInterval,
OCIRowid, OCIDate, OCINumber, OCIRaw, OCIString, register,
short, signed, sql_context, sql_cursor, static, struct,
typedef, union, unsigned, utext, uvarchar, varchar, void,
volatile, a typedef name, a precompiled header, exec oracle,
exec oracle begin, exec, exec sql, exec sql begin,
exec sql end, exec sql type, exec sql var, exec sql include,
The symbol "enum," was substituted for "GTUMEMINFOCPP" to continue.
Error at line 0, column 0 in file pgb01200.pc
PCC-F-02102, Fatal error while doing C preprocessing
*** Error code 1
make: Fatal error: Command failed for target `pgb01200.o'
---------------------------------------------------------------------------------------------------
环境变量如下
---------------------------------------------------------------------------------------------------
$ set
HOME=/export/home/fact
HZ=100
IFS=
LANG=ja_JP.PCK
LOGNAME=fact
MAIL=/usr/mail/fact
MAILCHECK=600
MANPATH=:/opt/SUNWspro/man
OPTIND=1
ORACLE_HOME=/opt/oracle/product/9.2.0
PATH=/usr/bin::/usr/include:/opt/SUNWspro/bin
PROJ_ROOT=/export/cpp
PS1=$
PS2=>
SHELL=/bin/sh
TERM=vt100
TZ=PRC
-------------------------------------------------------------------------------------------------------
export/cpp/inc/scom.h中的定义如下:
#ifndef SCOM_H
#define SCOM_H
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <memory.h>
#include <setjmp.h>
#include <errno.h>
extern jmp_buf retcnt_jb;
以下略....
---------------------------------------------------------------------------------------------------------
请高手帮忙,指点迷经。。。。感谢!!!