Vous n'êtes pas identifié(e).
Bonjour,
j'ai compilé postgres , postgis sans erreur
maintenant je me suis connecté à PG
pg_ctl -D /usr/local/pgsql/data –l logfile start
psql -U postgres template1
A ce niveau la pas de probléme
j'ai tapé ./createlang plpgsql template1
il me mets une erreur : ./createlang: error while loading shared libraries: libpq.so.4: cannot open shared object file: No such file or directory
pourtant j'ai mis le chemin de de libpq.so.4 dans /etc/ld.so.conf l
et j'ai lancé ldconfig
pourquoi il ne trouve pas cette bibliothéque
merci de m'aider
michel
Hors ligne
le probléme a été résolu en faisant un ln chemin lib so.4 /usr/lib/
puis j'ai fait su postgres
./psql -d template1 -f /usr/local/pgsql/share/contrib/postgis.sql
il me mets en erreur
psql: postgis.sql erreur current transaction is aborted command ignored util end of transaction block
Hors ligne
Il y a une commande SQL qui a échoué dans le script, et toutes les commandes qui suivent génèrent cette erreur. Il faut donc trouver la première commande en erreur…
Marc.
Hors ligne
merci je vois ca !!
Hors ligne
./psql -d template1 -f /usr/local/pgsql/share/contrib/postgis.sql > toto.txt
dans le fichier toto.txt je n'ai que BEGIN et rollback ?
merci
Hors ligne
Rajoute une option -e dans la commande psql. Comme ça il affichera les ordres …
Marc.
Hors ligne
on a la possibilté de mettre un fichier attaché dans ce forum ?
pour te montrer le resultat avec -e
merci !!
Hors ligne
le fichier est presque indentique a postgis.sql il y a juste un rollback a la fin
puis je te l'envoyer ?
Hors ligne
Quitte à faire ça, autant le coller là dessus : http://pastebin.com
Marc.
Hors ligne
ok je l'ai mis sur pastebin
je te remercie
Hors ligne
Oui, et le lien ? Sans ça nous ne pouvons pas le consulter.
Marc.
Hors ligne
Hors ligne
Il devrait en dessous de chaque ordre 'create function' y avoir une réponse 'CREATE FUNCTION'. Là, on a l'impression que rien n'a été exécuté…
Par exemple (je viens de le faire avec un module contrib) :
SET search_path = public;
SET
CREATE OR REPLACE FUNCTION get_raw_page(text, int4)
RETURNS bytea
AS '$libdir/pageinspect', 'get_raw_page'
LANGUAGE C STRICT;
CREATE FUNCTION
CREATE OR REPLACE FUNCTION get_raw_page(text, text, int4)
RETURNS bytea
AS '$libdir/pageinspect', 'get_raw_page_fork'
LANGUAGE C STRICT;
CREATE FUNCTION
CREATE OR REPLACE FUNCTION page_header(IN page bytea,
OUT lsn text,
OUT tli smallint,
OUT flags smallint,
OUT lower smallint,
OUT upper smallint,
OUT special smallint,
OUT pagesize smallint,
OUT version smallint,
OUT prune_xid xid)
AS '$libdir/pageinspect', 'page_header'
LANGUAGE C STRICT;
CREATE FUNCTION
Peux tu copier-coller toute la ligne de commande ? au passage, c'est sur quel OS ?
Dernière modification par Marc Cousin (26/10/2009 15:15:29)
Marc.
Hors ligne
je te remercie pour ton aide !!
sous psql/bin
./psql -e -d template1 -f /usr/local/geomatique/pgsql/share/contrib/postgis.sql
Os = suse 9.3 ( je travaille sur un serveurinux suse 9.3 à mon boulot) il faut que j'installe postgres et postgis c'est fait
il manque plus que de basculer les fcts spatiales dans postgres.
Hors ligne
Pour être vraiment sûr, peux tu mettre sur pastebin le contenu de toto.txt en résultat de cette commande ?
./psql -e -d template1 -f /usr/local/geomatique/pgsql/share/contrib/postgis.sql > toto.txt 2>&1
Marc.
Hors ligne
c'est un peu plus clair
http://pastebin.com/m7c8328ef
dans /etc/lo.so.conf y a bien mes chemins
et j'ai bien tapé ldconfig mais je reverifie
a moins que toi tu as vu la solution de suite
je te remercie @+ on reste en contact
Hors ligne
si je fais
ldd /usr/local/geomatique/pgsql/lib/postgis-1.4.so
linux-gate.so.1 => (0xa000000000000000)
libgeos_c.so.1 => /usr/local/geomatique/lib/libgeos_c.so.1 (0x2000000800124000)
libproj.so.0 => /usr/local/geomatique/lib/libproj.so.0 (0x2000000800160000)
libc.so.6.1 => /lib/tls/libc.so.6.1 (0x20000008001ec000)
libgeos-3.1.1.so => /usr/local/geomatique/lib/libgeos-3.1.1.so (0x2000000800418000)
libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x20000008006e8000)
libm.so.6.1 => /lib/tls/libm.so.6.1 (0x200000080085c000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x2000000800910000)
/lib/ld-linux-ia64.so.2 (0x2000000800000000)
c'est correct cela ?
merci
Hors ligne
Ça y ressemble oui
Marc.
Hors ligne
voici mon ldconfig
http://pastebin.com/m1282da1
il y a bien postgis-1.4.so
mais quand je lance ./psql -d template1 -f /usr/local/pgsql/share/contrib/postgis.sql
il trouve pas cette bibliothéque
comment pourrez je le contourner
merci
Hors ligne
et meme si joint en passant la compilation de postgis
http://pastebin.com/m1170ae7e
Hors ligne
Et mettre le chemin d'accès à la librairie dans le LD_LIBRARY_PATH de l'utilisateur postgres ? (il faudra redémarrer le cluster pour faire prendre en compte le nouvel environnement)
Marc.
Hors ligne
comme ceci ?
LD_LIBRARY_PATH=/usr/local/geomatique/pgsql/lib
export LD_LIBRARY_PATH
redemarrer le cluster c'est à dire je me deconnecte de postgres et je me reconnecte?
merci
Hors ligne
c'est assez bizarre
maintenant libgeos passe c'est libproj.so qui est en erreur
libgeos_c.so.1 => /usr/local/geomatique/lib/libgeos_c.so.1 (0x2000000800124000)
libproj.so.0 => /usr/local/geomatique/lib/libproj.so.0 (0x2000000800160000)
voir http://pastebin.com/m2344efa6
pourtant j'ai fait
-ln -s /usr/local/geomatique/lib/libproj.so.0 /usr/lib
et j'ai aussi fais avec LD_LIBRARY_PATH = /usr/local/geomatique/lib
puis export LD_LIBRRAY_PATH
Hors ligne
export LD_LIBRRAY_PATH avec ou sans faute de frappe ?
ensuite le export c'est dans le shell qui lance le moteur postgresql, pas le client postgresql (commande pg_ctl)
Marc.
Hors ligne
ok escuse sans faute de frappe
export LD_LIBRARY_PATH avec ou sans faute de frappe ?
ensuite le export c'est dans le shell qui lance le moteur postgresql, pas le client postgresql (commande pg_ctl)
<< il faut aue j'arrete mon serveur postgres et que je redemarre ?
pg_ctl -D /usr/local/geomatique/pgsql/data start
peut tu confirmer
merci
Hors ligne