Estou tentando usar ogr2ogr para fazer upload de um shapefile para uma instalação remota do PostGres. Quando eu executei este comando:
celenius:~ celenius$ ogr2ogr -f PostgreSQL PG:"host=255.34.00.00 user=postgres dbname=mydb password=***" Dropbox/data/roads.shp;
Recebi a seguinte mensagem de erro:
Unable to find driver `PostgreSQL'.
The following drivers are available:
-> `ESRI Shapefile'
-> `MapInfo File'
-> `UK .NTF'
...
-> `SVG'
-> `CouchDB'
-> `Idrisi'
-> `ARCGEN'
-> `SEGUKOOA'
-> `SEGY'
(Omiti alguns dos drivers, pois eles não são relevantes). Existe uma maneira de atualizar ogr2ogr para incluir o PostgreSQL? Estou usando um Mac com OS 10.7.4
brew install gdal --with-postgresql
Economize um pouco de dor e use os binários / estruturas da Kyngchaos para OSX .GDAL-Complete é o que você está procurando.
Outra opção é usar o HomeBrew .
fonte
which ogrinfo
retorna/usr/local/bin/ogrinfo
. Eu instalei o GDAL e outros do KyngChaos antes de instalar o QGis.supondo que você tenha compilado o gdal a partir do código-fonte, inclua --with-pg = / path / para / pg_config ao configurar o gdal.
EDIT: Observe que
pg_config
deve estar no mesmo diretório que seus outros binários do PostgreSQL, comopsql
, etc. Observe também este detalhe da resposta do user259060 abaixo: você deve verificar se está instalada uma versão apropriada do postgresql-server-dev (por exemplo, no Ubuntu useapt list --installed | grep postgresql-server-dev
se não encontrado, useapt-cache search postgresql-server-dev
e instale o pacote correspondente comsudo apt-get install postgresql-server-dev
).fonte
./configure
saída, mas tentandoogr2ogr -f PostgreSQL
darERROR 1: Unable to find driver 'PostgreSQL'
. Além disso, noPostgreSQL
inogrinfo --formats
Recebi a mesma mensagem enquanto estava no Windows.
Ele estava reclamando sobre o tipo de aspas (simples versus duplo) que eu estava usando em torno da cadeia de conexão. Mudar as aspas corrigiu o problema.
fonte
Existe a possibilidade de você ver algo como "Suporte ao PostgreSQL: no", mesmo que você tenha configurado a fonte usando "--with-pg = / path / to / pg_config" ... nesse caso, execute o sudo apt- instale o postgresql-server-dev-all e tente novamente.
fonte
Ao ler o documento de formatos vetoriais ogr2ogr , parece que você precisa instalar a biblioteca do cliente PostgreSQL (libpq).
Essa pergunta semelhante parece fornecer algumas dicas para resolver um problema semelhante, apenas com as ligações do Python.
fonte