2017-02-07 3 views
0

this 설명서를 사용하여 Windows에서 소스에서 최신 안정 PostGIS를 빌드하려고합니다. 이미 PostgreSQL을 문제없이 설치했습니다. 내가Windows에서 PostGIS 소스를 빌드 할 때 pg_config가 없습니다.

$ sh ./configure --with-pgconfig="c:/Program Files/PostgreSQL/9.6/bin/pg_config.exe" 

configure: error: the user-specified pg_config file c:/Program Files/PostgreSQL/9.6/bin/pg_config.exe does not exist

를 사용하여 pg_config 파일을 지정하지만이 존재한다면 나는이 문제를 얻을

configure: error: could not find pg_config within the current path. You may need to re-run configure with a --with-pgconfig parameter.

.. : 내가 PostGIS와 소스에서 구성 스크립트를 실행하면,이 문제를 얻을 .

아무도 제안이 있습니까? 나는 근원에서 건설하는 것이 중요하다.

+0

1) 오타가 있습니다 :'pg_cofig.exe' 2)''c :/Program Files/PostgreSQL/9.6/bin/pg_config.exe ''수동으로 실행하면 예상 출력을 얻습니까? 3)'Program Files'의 공간에 문제가있을 수 있습니다.이 공간을 벗어나거나 공백이있는 경로 이름은 피하면 사라지십니까? –

+0

1) 네, 미안 해요, 그건 단지 여기에 타입이기 때문에 내 실험 (업데이트)에 없습니다. 2) pg_config 실행 파일을 실행하면 의도 한대로 작동합니다. 3) 따옴표를 처리했다고 생각했지만 공간을 벗어나기 위해 노력했지만 여전히 같은 문제가 있습니다. –

+0

죄송합니다. 업데이트 된 링크 Postgis 소스를 다운로드하십시오. –

답변

1

이것은 configure의 버그입니다.

이 오류 메시지에서 해당 볼 수 있습니다 : 그 라인에

./configure: line 15593: test: "C:\Program: binary operator expected 

을, 나는 configure에서 볼 :

if test -f $PG_CONFIG; then 

그 주변 (및 다른 참조 PG_CONFIG에) 큰 따옴표가 있어야한다 .

나는 두 가지 해결 방법을 생각할 수 있습니다

  • 는 경로 이름에 공백없이 디렉토리에 PostgreSQL을 설치합니다.

  • 의 포장을 풀고 C:\Program Files 아래 디렉토리에 PostGIS와이 같은 configure을 실행

    ./configure --with-pgconfig="../PostgreSQL/9.6/bin/pg_config.exe" 
    

PostGIS와에 대한 fix has been committed,이 릴리스에서 작동해야하므로이에 2.4.0.

+0

고마워! 머리에 못이 박 혔어. 이제는 PGXS makefile을 요청하고 PostgreSQL 서버 개발 패키지를 묻습니다. 그래서 PostgreSQL을 다르게 설치해야한다고 생각합니다. –

+0

PostgreSQL을위한 헤더 파일과 개발 환경 (종종 * devel * 또는 이와 비슷한)이 들어있는 소프트웨어 패키지를 설치해야합니다. –

+0

PostGIS에 패치를 보내고 적용되었습니다. –