[proframe@dev03:/userdir/proframe/proframe4.0/logging/dbio]$ proc
Pro*C/C++: Release 10.2.0.2.0 - Production on 화 2월 27 09:44:42 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.
시스템 기본 옵션 값이 가지고 온 곳: /oracle/app/oracle10g/product/1020/precomp/admin/pcscfg.cfg
옵션 이름 현재 값 기술
-------------------------------------------------------------------------------
auto_connect 아니오 ops$ 계정으로 자동 연결할 수 있도록 합니다
char_map charz 문자 배열과 문자열을 대응합니다
close_on_commit아니오 COMMIT에 모든 커서를 닫습니다
cmax 100 접속 풀에 대한 CMAX 값
cmin 2 접속 풀에 대한 CMIN 값
cincr 1 접속 풀에 대한 CINCR 값
ctimeout 0 접속 풀에 대한 CTIMEOUT 값
cnowait 0 접속 풀에 대한 CNOWAIT 값
code kr_c 생성될 코드 유형
comp_charset multi_byte C 컴파일러가 지원하는 문자 집합 유형
config default 다른 파일로 시스템 구성 파일 무효화
cpool 아니오 접속 풀링 지원
cpp_suffix *none* 기본 C++ 파일 이름 접미어 무효화
dbms native v6/v7/v8 호환성 모드
def_sqlcode 아니오 '#define SQLCODE sqlca.sqlcode' 매크로 생성
define _LONG_LONG 선행 프로세서 기호 정의
_IBM_C
__64BIT__
*none*
duration transaction 캐시에 있는 객체에 대한 핀 기간 설정
dynamic oracle Oracle 또는 ANSI 동적 SQL 의미 지정
errors 예 오류 메시지가 터미널에 전송될지 여부
errtype *none* intype 파일 오류에 대한 목록 파일 이름
events 아니오 등록/가입 이벤트 통지가 지원됩니다.
fips none ANSI 비호환 사용의 FIPS 플래그 처리
header *none* 이전에 컴파일된 헤더에 대한 파일 확장자 지정
hold_cursor 아니오 커서 캐시에서 커서 유지 제어
iname *none* 입력 파일 이름
include *none* 포함된 파일에 대한 디렉토리 경로
intype *none* 유형 정보에 대한 입력 파일 이름
lines 아니오 생성된 코드에 #line 지시어 추가
lname *none* 기본 목록 파일 이름 무효화
ltype short 목록 파일에 생성된 데이터 양
maxliteral 1024 생성된 문자열 리터럴의 최대 길이
maxopencursors 10 캐시에 저장된 열린 커서의 최대 수
mode oracle Oracle 또는 ANSI 규칙에 대한 코드 일치
native_types 아니오 고유 float/double에 대한 지원
nls_char *none* 국가별 언어 문자 변수 지정
nls_local 아니오 NLS 문자 의미가 수행되는 방법 제어
objects 예 객체 유형 지원
oname *none* 출력 파일 이름
oraca 아니오 ORACA 사용 제어
pagelen 80 목록 파일의 페이지 길이
parse full 비SQL 코드의 구문 분석 제어
prefetch 1 커서 OPEN 시 미리 인출된 행 수
release_cursor 아니오 커서 캐시에서 커서 해제 제어
select_error 예 선택 오류의 플래그 제어
sqlcheck syntax SQL 확인 시 컴파일 시간의 양
sys_include /usr/include 시스템 헤더 파일이 있는 디렉토리
threads 아니오 다중 스레드 응용 프로그램을 나타냄
type_code oracle 동적 SQL에 대한 Oracle 또는 ANSI 유형 사용
unsafe_null 아니오 지시자 변수 없이 널 인출 허용
userid *none* 사용자 이름/암호 [@dbname] 접속 문자열
utf16_charset nchar_charset UTF16 변수에 의해 사용된 문자 집합 형식
varchar 아니오 암시적 varchar 구조 사용 허용
version recent 반환될 객체의 버전
PCC-F-02135, CMD-LINE: 사용자가 도움을 요청했습니다
[proframe@dev03:/userdir/proframe/proframe4.0/logging/dbio]$
이것을 영문으로 다시 보면
[cbssvd01@e9812978:/logs/proframe/cbs/dbio_log]proc
Pro*C/C++: Release 10.2.0.3.0 - Production on Wed Jul 2 18:24:14 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
System default option values taken from: /oracle/app/oracle/product/10.2.0/precomp/admin/pcscfg.cfg
Option Name Current Value Description
-------------------------------------------------------------------------------
auto_connect no Allow automatic connection to ops$ account
char_map charz Mapping of character arrays and strings
close_on_commitno Close all cursors on COMMIT
cmax 100 CMAX Value for connection pool
cmin 2 CMIN Value for connection pool
cincr 1 CINCR Value for connection pool
ctimeout 0 CTIMEOUT Value for connection pool
cnowait 0 CNOWAIT Value for connection pool
code kr_c The type of code to be generated
comp_charset multi_byte The character set type the C compiler supports
config default Override system configuration file with another
cpool no Support connection pooling
cpp_suffix *none* Override the default C++ filename suffix
dbms native v6/v7/v8 compatibility mode
def_sqlcode no Generate '#define SQLCODE sqlca.sqlcode' macro
define _LONG_LONG Define a preprocessor symbol
_IBM_C
__64BIT__
*none*
duration transaction Set pin duration for objects in the cache
dynamic oracle Specify Oracle or ANSI Dynamic SQL Semantics
errors yes Whether error messages are sent to the terminal
errtype *none* Name of the list file for intype file errors
events no Support publish-subscribe event notifications
fips none FIPS flagging of ANSI noncompliant usage
header *none* Specify file extension for Precompiled Headers
hold_cursor no Control holding of cursors in the cursor cache
iname *none* The name of the input file
include *none* Directory paths for included files
intype *none* The name of the input file for type information
lines no Add #line directives to the generated code
lname *none* Override default list file name
ltype short The amount of data generated in the list file
maxliteral 1024 Maximum length of a generated string literal
maxopencursors 10 Maximum number of cached open cursors
mode oracle Code conformance to Oracle or ANSI rules
native_types no Support for native float/double
nls_char *none* Specify National Language character variables
nls_local no Control how NLS character semantics are done
objects yes Support object types
oname *none* The name of the output file
oraca no Control the use of the ORACA
pagelen 80 The page length of the list file
parse full Control which non-SQL code is parsed
prefetch 1 Number of rows pre-fetched at cursor OPEN time
release_cursor no Control release of cursors from cursor cache
select_error yes Control flagging of select errors
sqlcheck syntax Amount of compile-time SQL checking
sys_include /usr/include Directory where system header files are found
threads no Indicates a multi-threaded application
type_code oracle Use Oracle or ANSI type codes for Dynamic SQL
unsafe_null no Allow a NULL fetch without indicator variable
userid *none* A username/password [@dbname] connect string
utf16_charset nchar_charset The character set form used by UTF16 variables
varchar no Allow the use of implicit varchar structures
version recent Which version of an object is to be returned
PCC-F-02135, CMD-LINE: User asked for help
[cbssvd01@e9812978:/logs/proframe/cbs/dbio_log]
실제 컴파일 되는 모양을 본다면
proc lines=YES mode=ORACLE dbms=V8 unsafe_null=YES hold_cursor=YES code=ANSI_C ltype=NONE define=DEBUG define=ORA_PROC define=PDB_TRACE define=GLOBALCB define=FRAME_DEV include=/tmax/proframe/cbs/pfm/inc include=/tmax/proframe/
cbs/release/dbio/inc include=/tmax/proframe/cbs/release/pmap/inc include=/tmax/tmax/cbs include=/tmax/tmax/cbs/usrinc include=/oracle/app/oracle/product/10.2.0/precomp/public include=/oracle/app/oracle/product/10.2.0/rdbms/public include=/tmax/npfm2/package/proframe/pfm_dev/src/ccut_test/ccut_src/rel/dbio/inc include=/tmax/npfm2/package/proframe/pfm_dev/src/ccut_test/ccut_src/rel
/pmap/inc -I/oracle/app/oracle/product/10.2.0/precomp/public -I/oracle/app/oracle/product/10.2.0/rdbms/public sqlcheck=SYNTAX iname=pfmDbioAFTS_TRMS_PRGR_FILE_PTCL_PS0000_1_03.pc oname=pfmDbioAFTS_TRMS_PRG
R_FILE_PTCL_PS0000.c
Pro*C/C++: Release 10.2.0.3.0 - Production on Wed Jul 2 17:36:43 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
System default option values taken from: /oracle/app/oracle/product/10.2.0/precomp/admin/pcscfg.cfg
>>> to compile c file
cc -q64 -btl -DORACLE -qlanglvl=extc99 -g -q64 -qinfo=pro -brtl -O0 -qcpluscmt -DUSE_TCACHE -DTCACHE_ON -DGLOBALCB -DAUTOFREECB -DTRACE -DDEBUG -D__PTHREAD_STATIC__ -D_PFM_SHORTNAME_WRAPPER -I/tmax/proframe/cbs/release/dbio/inc -I/oracle/app/oracle/product/10.2.0/rdbms/public -I/tmax/npfm3/package/proframe/pfm_dev/src/ccut_test/ccut_src/rel/
dbio/inc -I/tmax/npfm3/package/proframe/pfm_dev/src/ccut_test/ccut_src/rel/pmap/inc -I/tmax/proframe/cbs/pfm/inc -I/tmax/proframe/cbs/release/inc -I/tmax/proframe/cbs/release/pmap/inc -I/tmax/prof
rame/cbs/release/pmap/src -I/tmax/proframe/cbs/release/dbio/inc -I/tmax/tmax/cbs/usrinc -I/tmax/tmax/cbs -I/oracle/app/oracle/product/10.2.0/precomp/public -I/oracle/app/oracle/product/10.2.0/rdbms/p
ublic -c pfmDbioAFTS_TRMS_PRGR_FILE_PTCL_PS0000.c
"pfmDbioAFTS_TRMS_PRGR_FILE_PTCL_PS0000_1_03.pc", line 208.16: 1506-304 (I) No function prototype given for "func".
뭐 이렇게 되겠죠. 먼저 ~.pc 프로그램을 proc 컴파일러를 이용하여 ~.c 로 만든다음 다시 cc 컴파일러로 ~.c 를 ~.o 로 컴파일 하게 됩니다. 물론 이 ~.o 를 ~.a 나 ~.so, ~.sl 로 묶으려면 cc 를 한번 더 돌려야 하겠지요..
-----> 4. Compile entry-function source and link object files
cc -q64 -btl -DORACLE -qlanglvl=extc99 -g -q64 -qinfo=pro -brtl -O0 -qcpluscmt -DUSE_TCACHE -DTCACHE_ON -DGLOBALCB -DAUTOFREECB -DTRACE -DDEBUG
-D__PTHREAD_STATIC__ -D_PFM_SHORTNAME_WRAPPER -I/tmax/proframe/cbs/release/dbio/inc -I/oracle/app/oracle/product/10.2.0/rdbms/public -I/tmax/npfm3/package/proframe/pfm_dev/src/ccut_test/ccut_src/rel/
dbio/inc -I/tmax/npfm3/package/proframe/pfm_dev/src/ccut_test/ccut_src/rel/pmap/inc -I/tmax/proframe/cbs/pfm/inc -I/tmax/proframe/cbs/release/inc -I/tmax/proframe/cbs/release/pmap/inc -I/tmax/prof
rame/cbs/release/pmap/src -I/tmax/proframe/cbs/release/dbio/inc -I/tmax/tmax/cbs/usrinc -I/tmax/tmax/cbs -I/oracle/app/oracle/product/10.2.0/precomp/public -I/oracle/app/oracle/product/10.2.0/rdbms/p
ublic -c pfmDbioAFTS_TRMS_PRGR_FILE_PTCL.c
"pfmDbioAFTS_TRMS_PRGR_FILE_PTCL.c", line 34.16: 1506-304 (I) No function prototype given for "func".
/sw/openmcm/bin/McmMBL /sw/openmcm/config/mcm_mbl.opt pfmDbioAFTS_TRMS_PRGR_FILE_PTCL.c cc -q64 -btl -DORACLE -qlanglvl=extc99 -g -q64 -qinfo=pro -brtl -O0 -qcpluscmt -DUSE_TCACHE -DTC
ACHE_ON -DGLOBALCB -DAUTOFREECB -DTRACE -DDEBUG -D__PTHREAD_STATIC__ -D_PFM_SHORTNAME_WRAPPER -I/tmax/proframe/cbs/release/dbio/inc -I/oracle/app/oracle/product
/10.2.0/rdbms/public -I/tmax/npfm3/package/proframe/pfm_dev/src/ccut_test/ccut_src/rel/dbio/inc -I/tmax/npfm3/package/proframe/pfm_dev/src/ccut_test/ccut_src/rel/pmap/inc -I/tmax/proframe/cbs/pfm/inc
-I/tmax/proframe/cbs/release/inc -I/tmax/proframe/cbs/release/pmap/inc -I/tmax/proframe/cbs/release/pmap/src -I/tmax/proframe/cbs/release/dbio/inc -I/tmax/tmax/cbs/usrinc -I/tmax/tmax/cbs -I/ora
cle/app/oracle/product/10.2.0/precomp/public -I/oracle/app/oracle/product/10.2.0/rdbms/public -c
cc -G -bshared -q64 -o libpfmDbioAFTS_TRMS_PRGR_FILE_PTCL.so pfmDbioAFTS_TRMS_PRGR_FILE_PTCL_PD0000.o pfmDbioAFTS_TRMS_PRGR_FILE_PTCL_PF0000.o pfmDbioAFTS_TRMS_PRGR_FILE_PTCL_PI0000.o pfmDbioAFTS_TRMS_PR
GR_FILE_PTCL_PS0000.o pfmDbioAFTS_TRMS_PRGR_FILE_PTCL_PU0000.o pfmDbioAFTS_TRMS_PRGR_FILE_PTCL.o -G -bshared -q64 -qlanglvl=extc99 -brtl -L/tmax/proframe/cbs/pfm/lib -L/tmax/proframe/cbs/release/lib -L
/tmax/proframe/cbs/release/pmap/lib -L/tmax/proframe/cbs/release/dbio/lib -L/tmax/tmax/cbs/lib64 -L/oracle/app/oracle/product/10.2.0/lib -L/sw/openmcm/lib -lMcmMblTM -lMcmMatTP
목표 "all"은(는) 최근의 것입니다.
>>> [make] DBIO library linked 5 out of 5 modules successfully.
출처 : http://pangate.com/99