Hallo an alle,
Ich habe ein Problem mit Postgresql. Nachdem ich mit emerge Postgres unter Gentoo geupdatet habe, funktioniert unser Wiki nicht mehr. Folgende Fehlermeldung erscheint immer:
pg_query() [function.pg-query]: Query failed: ERROR: could not load library "/usr/lib/postgresql-8.4/lib/plpgsql.so": /usr/lib/postgresql-8.4/lib/plpgsql.so: undefined symbol: PinPortal in <wikiverzeichnis>/includes/db/DatabasePostgres.php on line 580
Mediawiki braucht bei Postgres als Erweiterung PL/pgsql. Das ist auch installiert. Die Lib liegt im angegebenen Verzeichnis.
Kann mir jemand einen Tipp geben, was ich machen soll?
On Mon, Nov 01, 2010 at 02:43:11PM +0100, Alexander Köhler wrote:
Hallo an alle,
Ich habe ein Problem mit Postgresql. Nachdem ich mit emerge Postgres unter Gentoo geupdatet habe, funktioniert unser Wiki nicht mehr. Folgende Fehlermeldung erscheint immer:
pg_query() [function.pg-query]: Query failed: ERROR: could not load library "/usr/lib/postgresql-8.4/lib/plpgsql.so": /usr/lib/postgresql-8.4/lib/plpgsql.so: undefined symbol: PinPortal in <wikiverzeichnis>/includes/db/DatabasePostgres.php on line 580
Nur wild herumspekuliert: hat emerge vielleicht PostgreSQL 9.0 installiert und das PHP ist gegen die 8.4-Libraries gelinkt? Das wäre dann wahrscheinlich ein Abhängigkeitsproblem der PHP-Installation.
Mediawiki braucht bei Postgres als Erweiterung PL/pgsql. Das ist auch installiert. Die Lib liegt im angegebenen Verzeichnis.
Kann mir jemand einen Tipp geben, was ich machen soll?
Wenn meine Vermutung stimmt, muss evtl. das PHP neu gebaut werden (weiß jetzt allerdings nicht genau, wie bei Gentoo das Abhängigkeitsmanagement funktioniert). Eigentlich sollte sowas von der Abhängigkeitsverwaltung verhindert werden.
Viele Grüße Jan Dittberner
Mit emerge ist es möglich, mehrere Versionen eines Programmes in sogenannten Slots zu installieren. Bei mir sind die beiden Postgres-Versionen 8.4 und 9.0 in solchen Slots parallel installiert. Aktiviert (eselect) ist die 8.4 noch.
Ich habe jetzt PHP noch mal neu gebaut und mit ldd geprüft, ob es auch gegen die 8.4 version gelinkt ist. Das ist es jetzt auch. Vorher war es gegen die 9.0 gelinkt, warum auch immer...
Postgres-8.4 wurde heute durch ein Perl-Update auch noch mal neu gebaut. Die besagte Lib ist korrekt gelinkt.
Eine Möglichkeit bestünde vllt noch darin, die restlichen von PHP abhängigen Pakete neu zu bauen. sind mir aber ein bissel viel. ;-) Gibt es eine schnellere und sichere Methode?
Viele Grüße Alex
Am Montag, 1. November 2010, 15:02:28 schrieb Jan Dittberner:
On Mon, Nov 01, 2010 at 02:43:11PM +0100, Alexander Köhler wrote:
Hallo an alle,
Ich habe ein Problem mit Postgresql. Nachdem ich mit emerge Postgres unter Gentoo geupdatet habe, funktioniert unser Wiki nicht mehr. Folgende Fehlermeldung erscheint immer:
pg_query() [function.pg-query]: Query failed: ERROR: could not load library "/usr/lib/postgresql-8.4/lib/plpgsql.so": /usr/lib/postgresql-8.4/lib/plpgsql.so: undefined symbol: PinPortal in <wikiverzeichnis>/includes/db/DatabasePostgres.php on line 580
Nur wild herumspekuliert: hat emerge vielleicht PostgreSQL 9.0 installiert und das PHP ist gegen die 8.4-Libraries gelinkt? Das wäre dann wahrscheinlich ein Abhängigkeitsproblem der PHP-Installation.
Mediawiki braucht bei Postgres als Erweiterung PL/pgsql. Das ist auch installiert. Die Lib liegt im angegebenen Verzeichnis.
Kann mir jemand einen Tipp geben, was ich machen soll?
Wenn meine Vermutung stimmt, muss evtl. das PHP neu gebaut werden (weiß jetzt allerdings nicht genau, wie bei Gentoo das Abhängigkeitsmanagement funktioniert). Eigentlich sollte sowas von der Abhängigkeitsverwaltung verhindert werden.
Viele Grüße Jan Dittberner
lug-dd@mailman.schlittermann.de