지원되는 버전:현재 (18) / 17 / 16 / 15 / 14
개발 버전:개발
지원되지 않는 버전:13 / 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2
이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.현재버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

31.20. 건물스포츠 토토 결과프로그램

다음을 사용하여 프로그램을 빌드(즉, 컴파일 및 링크)하려면스포츠 토토 결과다음을 모두 수행해야 합니다 것들:

  • 포함스포츠 토토 결과-fe.h헤더 파일:

    #include <스포츠 토토 결과-fe.h

    그렇게 하지 못했다면 일반적으로 오류가 발생합니다 다음과 유사한 컴파일러의 메시지:

    foo.c: `main' 함수에서:
    foo.c:34: `PGconn'이 선언되지 않았습니다(이 함수에서 처음 사용됨)
    foo.c:35: `PGresult'가 선언되지 않았습니다(이 함수에서 처음 사용됨)
    foo.c:54: `CONNECTION_BAD' 선언되지 않음(이 함수에서 처음 사용됨)
    foo.c:68: `PGRES_COMMAND_OK' 선언되지 않음(이 함수에서 처음 사용)
    foo.c:95: `PGRES_TUPLES_OK'가 선언되지 않았습니다(이 함수에서 처음 사용됨)
  • 컴파일러가 다음이 있는 디렉토리를 가리킵니다.포스트그레SQL헤더 파일이 설치되었습니다. 공급하는-나디렉토리옵션을 컴파일러에 추가하세요. (에서 어떤 경우에는 컴파일러가 문제의 디렉토리를 조사합니다. 기본값이므로 이 옵션은 생략할 수 있습니다.) 예를 들어, 컴파일 명령줄은 다음과 같습니다.

    cc -c -I/usr/local/pgsql/include testprog.c

    만약 makefile을 사용하고 있다면 다음 옵션을 추가하세요.CPPFLAGS변수:

    CPPFLAGS += -I/usr/local/pgsql/include

    귀하의 프로그램이 다음에 의해 컴파일될 가능성이 있는 경우 다른 사용자라면 디렉터리 위치를 하드코딩하면 안 됩니다. 그렇게. 대신 유틸리티를 실행할 수 있습니다.pg_config헤더 파일이 어디에 있는지 알아내기 위해 로컬 시스템:

    $pg_config --includedir/usr/local/include

    있다면pkg-config설치했습니다, 당신은 대신 실행할 수 있습니다:

    $pkg-config --cflags 스포츠 토토 결과-I/usr/로컬/포함

    여기에는 이미 다음이 포함됩니다.-나경로 앞.

    컴파일러에 올바른 옵션을 지정하지 못하면 다음과 같은 오류 메시지가 나타납니다.

    test스포츠 토토 결과.c:8:22: 스포츠 토토 결과-fe.h: 해당 파일이나 디렉터리가 없습니다
  • 최종 프로그램 연결 시 옵션을 지정하세요.-lpq그래서스포츠 토토 결과라이브러리가 끌려오고, 옵션-L디렉토리컴파일러가스포츠 토토 결과도서관 거주합니다. (다시 말하지만, 컴파일러는 다음과 같이 일부 디렉토리를 검색합니다. 기본값.) 이식성을 극대화하려면 다음을 입력하세요.-L옵션 이전-lpq옵션. 예를 들면:

    cc -o testprog testprog1.o testprog2.o -L/usr/local/pgsql/lib -lpq

    다음을 사용하여 라이브러리 디렉토리를 찾을 수 있습니다.pg_config또한:

    $pg_config --libdir/usr/local/pgsql/lib

    또는 다시 사용pkg-config:

    $pkg-config --libs 스포츠 토토 결과-L/usr/local/pgsql/lib -lpq

    이것은 전체 옵션뿐만 아니라 전체 옵션을 인쇄한다는 점을 다시 한 번 참고하십시오. 경로.

    이 영역의 문제를 가리키는 오류 메시지는 다음과 같습니다. 다음과 같습니다:

    test스포츠 토토 결과.o: 'main' 함수에서:
    test스포츠 토토 결과.o(.text+0x60): `PQsetdbLogin'에 대한 정의되지 않은 참조
    test스포츠 토토 결과.o(.text+0x71): `PQstatus'에 대한 정의되지 않은 참조
    test스포츠 토토 결과.o(.text+0xa4): `PQerrorMessage'에 대한 정의되지 않은 참조

    이것은 당신이 잊어버렸다는 뜻입니다-lpq.

    /usr/bin/ld: -lpq를 찾을 수 없음

    이것은 당신이 다음을 잊어버렸다는 뜻입니다.-L옵션 또는 올바른 디렉토리를 지정하지 않았습니다.