LINUX/ABOUT LINUX

[Linux] Pro*c 환경설정

옐옐루 2022. 10. 27. 15:05

PRO*C란? 

- C언어를 사용하여 데이터 베이스를 쉽게 관리할 목적으로 미국 오라클 사가 만든 프로그래밍 언어 

- PL/SQL 과 같이 절차적 프로그래밍이 가능한 프로그램 도구로서 PL/SQL 처럼 오라클 내부에서 수행되는 프로그램이 아니라 실행 가능한 외부 프로그램으로 작성이 되어 관련 작업을 수행할 수 있게 해주는 도구 

즉 PROC는 C언어 속 SQL문이라고 생각하면 쉬움 

 


 

1. 사용자 계정 환경 설정 

# su - oracle  [ 오라클 계정으로 이동 후 ]

  * 나는 오라클 계정의 가장 상단에 makefile을 생성했지만 , 디렉토리 하나를 $ORACLE_HOME 루트나 다른 곳에 만들어 준 뒤 사용해주는

    게 깔끔함 

$ vi .bash_profile [ bash_profile에 아래와 같이PATH와 export 설정해주기 ] 

 

.bash_profile

 

$ source .bash_profile [적용시키기]

 

2. stddef.h 파일 경로 확인하기 

  * stddef.h 파일은 일반적으로 사용되는 포인터, 변수를 선언하기 위한 헤더파일이다

$ su root [ root 계정으로 이동 후 확인 ]

# find/usr -name "sttdef.h"  

 

stddef.h 파일 경로

 

3. pcscfg.cfg 파일 경로 확인하기 

  * pcscfg.h는 pro*c를 사용하기 위한 시스템 설정파일이다

# find/usr -name "pcscfg.cfg" 

 

pcscfg.cfg 파일 경로 확인

 

4. gcc 버전 확인하기 

# gcc -v 해서 나오는 gcc version을 반드시 체크한 후 , 환경설정시 pcscfg.cfg 파일 내에서 변동시켜주어야함. 꼭 기억하기

 

 

5. pcscfg.cfg 파일 재설정 

# cd $ORACLE_HOME/precomp/admin [ pcscfg 파일이 있는 admin 디렉토리로 이동 ]

# vi pcscfg.cfg [ pcscfg.cfg 파일 수정하기 ] 

/usr/lib/gcc/x86 64-redhat-linux/4.8.5/include 

gcc-v 확인했을때 4.8.5버전으로 되어 있으므로 바꿔주기 

 

 

6. pc 파일 작성해보기 

  *proc 로 컴파일 하기 위한 pc 확장자를 가진 test 파일을 생성하고. 컴파일을 통해 test를 진행할 예정 

   본인은 test.pc 이름으로 테스트 파일 작성하였음 

# su - oracle [ 오라클 계정으로 이동 후 pc 파일 생성해주기 ]

$ vi test.pc [본인은 makeFile 이 있는 경로에 test.pc 파일을 생성해주었음 - 메이크파일은 가장 상위 디렉토리에 작성함(7번에서 진행)  cd ~ 명령어를 통해 갈 수 있음 ] 

 

 

7. 컴파일 해주기 

  * 컴파일 방식에는 2가지가 있음. proc 컴파일 방식과 Makefile 컴파일 방식 .. 쉘을 이용한 컴파일도 존재하지만 oci 접속 

    방식에서 쉘을 이용하여 컴파일을 할 것이므로 proc에서는 두가지만 소개 

 

   7-1) Proc 컴파일 방식

   $ proc iname = test.pc 

   파일을 적게 컴파일 할 경우엔 이게 간단해 보이지만, 컴파일할 파일이 많을 경우에는 makefile 을 만들어 놓고 make 명     령어를 쓴는 것이 더 편할 수 있음 

 

   7-2) Makefile 컴파일 방식 

   $ vi Makefile [ makefile 작성해주기 . 경로는 test.pc 파일이 있는 곳과 동일한 곳에 생성해주기 ]

 

Makefile

 

8. makefile을 만든 후 make 명령어를 통해 컴파일 완료 

$ make [컴파일 진행] 

$ ls [컴파일이 제대로 되었는지 디렉토리 리스트 확인하기]

초록색 test가 생성되었다는 것은 컴파일이 되었다는 뜻! 

 

9. 컴파일 완료된 test 실행해보기 

$ ./test [ test 실행하기 ]

접속완료

 

 

위와 같은 창이 뜨면 접속 완료된 것 

환경설정 완료!

 

 

반응형