Tôi vừa cài đặt Postgres 9.3.4 và PostGIS 2.1 trên OSX Mavericks bằng các phiên bản mới nhất của KyngChaos libraries.Cố gắng sử dụng PostGIS với Postgres: "L ERI: không thể mở tệp điều khiển mở rộng"
Tuy nhiên, khi tôi cố gắng tạo ra các phần mở rộng không gian trên một cơ sở dữ liệu, tôi không thể, bởi vì Postgres tuyên bố không để có thể nhìn thấy các tập tin mở rộng:
:~ anna$ psql -d land -c "CREATE EXTENSION postgis;"
ERROR: could not open extension control file
"/usr/local/Cellar/postgresql/9.3.4/share/postgresql/extension/postgis.control":
No such file or directory
Có vẻ như các tập tin nằm ở một nơi khác:
:~ anna$ mdfind postgis.control
/usr/local/pgsql-9.3/share/extension/postgis.control
tôi chắc chắn sử dụng phiên bản dự kiến của Postgres, mặc dù tôi không biết nếu đây là nơi mà các thư viện KyngChaos thường cài đặt vào:
Annas-MacBook-Air:~ anna$ psql --version
psql (PostgreSQL) 9.3.4
Annas-MacBook-Air:~ anna$ which psql
/usr/local/pgsql-9.3/bin/psql
Tôi đã khá cẩn thận không cài đặt Postgres bằng Homebrew, v.v vì tôi biết rằng nó có thể gây ra sự cố khi có nhiều phiên bản của cùng một hệ thống.
Có ai có thể tư vấn về lý do tệp mở rộng không ở vị trí mong muốn không?
UPDATE:
Dường như có lẽ có nhiều phiên bản của Postgres trôi nổi trên hệ thống của tôi, và tôi đang sử dụng một trong những sai lầm?
:~ anna$ mdfind -name "postgres" | grep -G "postgres$"
/usr/local/pgsql-9.3/bin/postgres
/usr/local/var/postgres
/usr/local/Cellar/postgresql/9.3.4/bin/postgres
Tôi nên sử dụng cái nào và làm cách nào để đặt hệ thống để sử dụng cái này theo mặc định?
THÊM CẬP NHẬT
Dưới đây là đầu ra của pg_config
:
BINDIR = /usr/local/pgsql-9.3/bin
DOCDIR = /usr/local/pgsql-9.3/share/doc
INCLUDEDIR = /usr/local/pgsql-9.3/include
PKGINCLUDEDIR = /usr/local/pgsql-9.3/include
INCLUDEDIR-SERVER = /usr/local/pgsql-9.3/include/server
LIBDIR = /usr/local/pgsql-9.3/lib
PKGLIBDIR = /usr/local/pgsql-9.3/lib
LOCALEDIR =
MANDIR = /usr/local/pgsql-9.3/man
SHAREDIR = /usr/local/pgsql-9.3/share
SYSCONFDIR = /usr/local/pgsql-9.3/etc
PGXS = /usr/local/pgsql-9.3/lib/pgxs/src/makefiles/pgxs.mk
CONFIGURE = '--with-openssl' '--with-pam' '--with-krb5' '--with-gssapi' '--with-ldap' '--enable-thread-safety' '--with-bonjour' '--with-python' '--without-perl' '--enable-nls' '--with-libxml' 'CC=clang' 'CXX=clang++' 'CFLAGS=-Os -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.7.sdk -D_FILE_OFFSET_BITS=64' 'LD=clang' 'LDLFAGS=-arch x86_64 -isysroot /Developer/SDKs/MacOSX10.7.sdk'
CC = gcc
CPPFLAGS = -I/usr/include/libxml2
CFLAGS = -Os -arch x86_64 -D_FILE_OFFSET_BITS=64 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -fwrapv
CFLAGS_SL =
LDFLAGS = -arch x86_64 -Wl,-dead_strip_dylibs
LDFLAGS_SL =
LIBS = -lintl -liconv -lxml2 -lpam -lssl -lcrypto -lgssapi_krb5 -ledit -lz
VERSION = PostgreSQL 9.3.4
Có vẻ lạ khi thư mục gốc của quá trình cài đặt không giống nhau. Sau khi tất cả postGIS là một "phần mở rộng" của postgreSQL. – MickyInTheSky
Bản sao có thể có của [Không thể sử dụng uuid và tạo tiện ích mở rộng để sử dụng] [http://stackoverflow.com/questions/20810921/cant-use-uuid-and-create-an-extension-to-use-it) –