Fui instalado no postgis seguindo este guia . Tudo está bem.
SELECT postgis_full_version();
"POSTGIS="2.1.7 r13414" GEOS="3.4.2-CAPI-1.8.2 r3921" PROJ="Rel. 4.8.0, 6 March 2012" GDAL="GDAL 1.10.1, released 2013/08/26" LIBXML="2.9.1" LIBJSON="UNKNOWN" TOPOLOGY RASTER"
Mas eu não tenho o shp2pgsql /usr/lib/postgresql/9.4/bin
como você pode ver:
foo@bar:/usr/lib/postgresql/9.4/bin$ ls
clusterdb initdb pg_dump pg_standby psql
createdb oid2name pg_dumpall pg_test_fsync reindexdb
createlang pg_archivecleanup pg_isready pg_test_timing vacuumdb
createuser pg_basebackup pg_receivexlog pg_upgrade vacuumlo
dropdb pgbench pg_recvlogical pg_xlogdump
droplang pg_controldata pg_resetxlog postgres
dropuser pg_ctl pg_restore postmaster
Por que isso acontece? e como posso instalá-lo?
postgis
postgresql
ubuntu
shp2pgsql
Overflow012
fonte
fonte
Respostas:
Eu também estava seguindo o método de instalação do OP do PostgreSQL e PostGIS, a saber
sudo apt-get install postgresql-9.4-postgis-2.1 pgadmin3 postgresql-contrib-9.4
Habilitei a extensão PostGIS em um banco de dados, mas não
shp2pgsql
trabalhei até fazê-losudo apt-get install postgis
conforme listado na parte inferior da página. Por
postgresql-9.4-postgis-2.1
que não incluishp2pgsql
e simplesmentepostgis
inclui ... Não tenho muita certeza. Mas o PostgreSQL, o PostGIS eshp2pgsql
todos estão funcionando bem agora.fonte
Ao instalar o postgis no Linux, certifique-se de instalar o cliente também, pois o postgis por si só não instalará o executável shp2pgsql.
Até você instalar o cliente, existe apenas um link em / usr / bin / apontando para / etc / alternative / postgis-shp2pgsql. Este é apenas um link vazio até que a instalação do cliente coloque os executáveis em /usr/pgsql-9.4/bin.
Espero que isso ajude, aprecie o OP feito a pergunta há alguns meses e espero encontrar uma resolução mais cedo.
fonte
Normalmente, o
shp2pgsql
binário está presente/usr/bin/shp2pgsql
quando você instala com pacotes como no método que você mencionou.Você digitou
shp2pgsql
na linha de comando? Normalmente, funciona imediatamente.Se não,
você fez um
updatedb
(linha de comando para indexar arquivos) seguido de umlocate shp2pgsql
para encontrar o caminho binário real?você repetiu a saída da linha de comando usando
echo $PATH
? E qual é a saída?fonte
sudo locate shp2pgsql
está vazio.echo $PAHT
Retorna o comando/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
sudo locate shp2pgsql
está vazio, parece que você não instaloushp2pgsql
corretamente (ou esqueceu de fazersudo updatedb
). Se o nome do pacote for o mesmo para repositório adicional e o padrão, faça asudo apt-get install postgis
instalação de ambosshp2pgsql
eshp2pgsql-gui
. Esta resposta é baseada no fato de que eu deveria você estiver usando uma distro baseada no Debian (Debian, hortelã ou Ubuntu)sudo shp2pgsql
e,sudo apt-get install postgis
mas mantém o erro #foo@bar:/usr/lib/postgresql/9.4$ shp2pgsql bash: /usr/local/bin/shp2pgsql: No existe el archivo o el directorio
Tente atualizar primeiro, e depois proceder a partir daí:
sudo apt-get update
.Parece idiota, mas eu estava tendo problemas com minhas instalações de psql e postgis e tudo foi esclarecido assim que eu atualizei.
fonte