2014-06-16 3 views
0

로컬 컴퓨터에서 dblink 확장 프로그램을 만들려고합니다.라이브러리 dblink, postgresql을로드 할 수 없습니다.

저는 PSQL 9.2.4를 사용하고 있습니다. 나는 make를 실행하고 postgres를 설치하기 위해 설치를했다. contrib 폴더에 들어가서 make를 실행하고 dblink 디렉토리에 설치합니다.

dblink는 pg_available_extensions 테이블에 나열되어 있습니다.

그러나 CREATE EXTENSION을 실행하면 dblink; 데이터베이스에서 다음과 같은 오류가 발생합니다.

ERROR: could not load library "/usr/local/pgsql/lib/dblink.so": dlopen(/usr/local/pgsql/lib/dblink.so, 10): Symbol not found: _MemoryContextSwitchTo 
Referenced from: /usr/local/pgsql/lib/dblink.so 
Expected in: /usr/local/pgsql/bin/postgres 
in /usr/local/pgsql/lib/dblink.so 

잘 모르겠습니다. 나는 이것에 아주 새롭다. 감사.


솔루션은 그래서 난 내 컴퓨터에 포스트 그레스의 두 가지 버전이 있고 그들은 충돌했다. 내가 버전 중 하나를 제거하지만 simplying 디렉토리를 삭제. 모두 잘 맞습니다.

+0

외장으로 설치 한 것과 다른 PostgreSQL에 대해 컴파일되었습니다. 컴파일 할 때'USE_PGXS'를 사용했을 가능성이 있습니까? 다른 버전이 설치되어 있다면 그렇게 할 수 있습니다. –

+1

솔루션을 답변으로 게시 한 다음 받아 들여야합니다. :) – carols10cents

답변

0

그래서 제 컴퓨터에는 두 가지 버전의 포스트그레스가 있었는데 충돌이있었습니다. 디렉터리 삭제만으로 버전 중 하나를 제거했습니다. 모두 잘 맞습니다.

관련 문제