이제 임베디드 SQL C 프로그램을 구성하는 방법을 알았으니, 당신은 아마도 그것들을 컴파일하는 방법을 알고 싶을 것입니다. 컴파일하기 전에 포함된 파일을 통해 파일을 실행합니다.SQL C전처리기, 이는SQL특수 기능에 사용한 명령문 전화. 컴파일한 후에는 다음과 같은 특수 라이브러리와 연결해야 합니다. 필요한 기능이 포함되어 있습니다. 이 함수는 정보를 가져옵니다. 인수에서 다음을 수행합니다.SQL명령을 사용하여libpq인터페이스를 실행하고 결과를 출력에 지정된 인수입니다.
전처리기 프로그램이 호출됩니다.ecpg노멀에 포함됩니다포스트그레SQL설치. 임베디드 SQL 프로그램은 일반적으로 확장자로 이름이 지정됩니다..pgc. 다음과 같은 프로그램 파일이 있는 경우prog1.pgc, 다음과 같이 전처리할 수 있습니다. 간단히 전화하세요:
ecpg prog1.pgc
이렇게 하면 다음과 같은 파일이 생성됩니다.prog1.c. 입력 파일이 다음을 따르지 않는 경우 제안된 명명 패턴에 따라 출력 파일을 지정할 수 있습니다. 명시적으로를 사용하여-o옵션.
전처리된 파일은 정상적으로 컴파일될 수 롤 토토. 예:
cc -c prog1.c
생성된 C 소스 파일에는 다음의 헤더 파일이 포함됩니다.PostgreSQL설치, 그렇다면 당신이 설치했습니다PostgreSQL에 기본적으로 검색되지 않는 위치를 추가해야 합니다. 다음과 같은 옵션-I/usr/local/pgsql/include컴파일에 명령줄.
Embedded SQL 프로그램을 연결하려면 다음을 포함해야 합니다.libecpg라이브러리, 이렇게:
cc -o myprog prog1.o prog2.o ... -lecpg
다시, 다음과 같은 옵션을 추가해야 할 수도 있습니다-L/usr/local/pgsql/lib해당 명령줄로.
다음을 사용하여 대규모 프로젝트의 빌드 프로세스를 관리하는 경우만들다, 다음이 편리할 수도 있습니다. makefile에 다음 암시적 규칙을 포함하십시오.
ECPG = ecpg
%.c: %.pgc
$(ECPG) $<
의 전체 구문ecpg명령에 대한 자세한 내용은ecpg.
그ecpg라이브러리는 를 사용하여 빌드된 경우 스레드로부터 안전합니다.--스레드 안전성 활성화명령줄 옵션구성. (다른 방법을 사용해야 할 수도 있습니다. 클라이언트 코드를 컴파일하기 위한 스레딩 명령줄 옵션.)