From 33e5a4dfa528e1557dd9b2c2359449632fe1d343 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Sat, 23 Sep 2000 00:42:36 +0000 Subject: These are obsolete. --- doc/src/FAQ/FAQ_linux_german.html | 748 ------------------------------------- doc/src/FAQ/FAQ_linux_italian.html | 666 --------------------------------- 2 files changed, 1414 deletions(-) delete mode 100644 doc/src/FAQ/FAQ_linux_german.html delete mode 100644 doc/src/FAQ/FAQ_linux_italian.html (limited to 'doc/src') diff --git a/doc/src/FAQ/FAQ_linux_german.html b/doc/src/FAQ/FAQ_linux_german.html deleted file mode 100644 index 4f32472430f..00000000000 --- a/doc/src/FAQ/FAQ_linux_german.html +++ /dev/null @@ -1,748 +0,0 @@ - - -Linux PostgreSQL FAQ (german) - - - - - - - - - - - -

Häufig gestellte Fragen (FAQ) zu PostgreSQL >= V6.1, Linux-spezifisch

-Bitte Zusammen mit der normalen FAQ lesen!
- -
- - - - - - - - - - - - - - - - - - - - - - - - -
Letztes Update des Originals:Tue Aug 10 11:15:00 BST 1999
Original-FAQ gepflegt durch:Andrew C.R. Martin (martin@biochem.ucl.ac.uk)
Original Autor:Andrew C.R. Martin (martin@biochem.ucl.ac.uk)
 
Letztes Update der Übersetzung:Mo, 23. August 1999, 10:00 CEST
Übersetzer:Karsten Schulz (schulz@linux-systemhaus.de)
-
-

-Änderungen in dieser Version (* = geändert, + = neu, - = entfernt) -

- -+3.11) Wieso bekomme ich einen Fehler wie: IpcMemoryCreate: shmget failed (Permission denied)?
- -

Diese Datei ist ungefähr wie folgt unterteilt:

- -1.*) PostgreSQL kompilieren
-2.*) Hilfs- und Zusatzprogramme kompilieren
-3.*) Laufzeit Probleme
-


- - -

Beantwortete Fragen:

- 

PostgreSQL kompilieren

- - -1.1) Welche Anpassungen müssen in src/Makefile.global oder src/Makefile.custom gemacht werden - und gibt es weitere notwendige Änderungen?
-1.2) Warum habe ich Probleme mit der fehlenden Bibliothek libreadline?
-1.3) [REDHAT] Warum habe ich Probleme mit der fehlenden Bibliothek libdl und der fehlenden dlfcn.h?
-1.4) [SLACKWARE 3.1] Warum habe ich Probleme mit der fehlenden Bibliothek libdl und der fehlenden dlfcn.h?
-1.5) Die Kompilierung des Backends schlägt mit der Meldung fehl, daß die Include-Datei dlfcn.h fehlen würde.
-1.6) GCC meldet, daß er die Option -fpic ignorieren würde.
-1.7) Ich bekomme Warnungen, wie: warning: cast from pointer to integer of different size
-1.8) [SuSE-Linux 4.2-5.3] Wo sind curses und termcap?
-1.9) Warum bekomme ich Probleme mit ld.so?
-1.10) Wieso bekomme ich yy_flush_buffer undefined Fehler?
-1.11) Wie kompiliere ich PostgreSQL auf einem a.out System?
-1.12) Warum scheitert make mit der Meldung:
- yacc -d /disk2/PostgreSQL/src/backend/parser/gram.y - make: /usr/bin/make: cannot execute binary file
-1.13) Was sind die Bezüge in der Bibliothek X11_LIB zu libsocket und libnsl in der Datei src/Makefile.global?
-1.14) [DEBIAN] Wo ist die Bibliothek libtermcap?
-1.15) [REDHAT] Kann ich PostgreSQL als RPM-Archiv bekommen?
-1.16) Während ich versuche eine Entwickler-Version unter Linux zu kompilieren, bricht der Vorgang mit folgender - Fehlermeldung ab:
- In file included from /usr/include/sys/sem.h:8,
- from ipc.c:37:
- /usr/include/asm/bitops.h:32: warning: no previous prototype for Set_bit'
- ....
- make: *** [ipc.o] Error 1

-1.17) Beim Kompilieren von PostgreSQL bricht der gcc mit einer Signal 11 Meldung ab.
-1.18) Kann ich Version 6.1.1 unter MkLinux installieren?
-1.19) Warum stoppt make oder bricht sonstwie ab?
-1.20) Wie kann ich für die Prozessoren 486 oder Pentium optimieren?
-1.21) Wieso bekomme ich seltsame Ergebnisse beim Drucken von Zeiten (z.B. beim Regressionstest 'timespan')?
-1.22) Warum bekomme ich keine shared libraries für libpq, wenn ich Version 6.3.2 kompiliere?
-1.23) Warum scheitert der Kompilierungslauf mit Nachrichten, daß F_BOOLIN, F_BOOLOUT und F_BYTEAIN nicht deklariert seien?
- -

- - 

Hilfs- und Zusatzprogramme kompilieren

- -2.1) Der Linker findet die Bibliothek libX11 nicht, wenn pgtclsh kompiliert werden soll.
- - - 

Laufzeit Probleme

- -3.1) Ich bekomme die Fehlermeldung _fUnKy_POSTPORT_sTuFf_ undefined, wenn Skripts wie createuser laufen.
-3.2) Nachdem ich postmaster starte, meldet das System Bad system call (Core dumped)
-3.3) Wenn ich versuche, den Postmaster zu starten, bekomme ich eine Fehlermeldung wie:
- Failed Assertion("!(file != 0):(null)", File:
- "/usr/local/PostgreSQL/src/backend/storage/file/fd.c", Line: 257)
- !(file != 0) (0)
- initdb: could not create template database
- initdb: cleaning up.

-3.4) Warum funktioniert createuser nicht?
-3.5) Wieso bekomme ich einen Fehler, wie:
- IpcMemoryCreate: memKey=155356396 , size=760632 ,
- permission=384IpcMemoryCreate: shmget(..., create, ...)
- failed: Invalid argument

-3.6) Wieso scheitert der Aufruf von psql mit: psql: can't load library 'libpq.so.1
-3.7) Andere seltsame Verhaltensweisen
-3.8) Wenn PostgreSQL beim Systemhalt lief, führt Linux beim Neustart jedesmal einen Filesystemcheck (fsck) durch
-3.9) Warum dauert Query 32 in den RegressionsTests so lange?
-3.10) Warum bekomme ich lustige Rundungsergebnisse in einigen Datums/Zeit-Berechnungen, wie:
- select '4 hours'::timespan;
- liefert '3 hours 59 minutes 60 seconds'
?
-+3.11) Wieso bekomme ich einen Fehler wie: IpcMemoryCreate: shmget failed (Permission denied)?
- -

- -

Abschnitt 1: PostgreSQL kompilieren

- -

1.1) Welche Anpassungen müssen in src/Makefile.global oder src/Makefile.custom gemacht werden - und gibt es weitere notwendige Änderungen?

- -Änderungen an den Makefiles werden am einfachsten dadurch gemacht, indem das customize shellscript -im src-Verzeichnis aufgerufen wird, das ein Makefile.custom erzeugt. -

-Die einzige andere Änderung, die evtl. zu machen wäre, ist Flex zu ersetzen, wenn Du die Version 2.5.3 hast. -Diese Version hat einen Fehler, der sich durch das Scheitern des createuser-Programms äußert. -(siehe dazu auch Frage 3.4). -

-Falls Du die Makefiles manuell änderst, musst Du die -folgende Variable setzen:

-

-PORTNAME= linux
-
- -Du musst auch die folgende Variable ändern, damit sie auf Deine -Installation passt: -
-POSTGRESDIR
-
-Falls Du die USE_TCL-Option aktivierst, musst Du folgende Variablen setzen:

- -
-TCL_INCDIR=
-TCL_LIBDIR=
-TCL_LIB=
-TK_INCDIR=
-TK_LIBDIR=
-TK_LIB=
-X11_INCDIR=
-X11_LIBDIR=
-X11_LIB=
-
- -Auf meinem Slackware 3.0 System sind das: -
-TCL_INCDIR=     /usr/include/tcl
-TCL_LIBDIR=     /usr/lib
-TCL_LIB=        -ltcl
-TK_INCDIR=      /usr/include/tcl
-TK_LIBDIR=      /usr/lib
-TK_LIB=         -ltk
-X11_INCDIR=     /usr/include/X11
-X11_LIBDIR=     /usr/X386/lib
-X11_LIB=        -lX11
-
-

-Du solltest auch alle weiteren Änderungen durchführen, die in der -Datei INSTALL und in Makefile.global dokumentiert sind. - -

1.2) Warum habe ich Probleme mit der fehlenden Bibliothek libreadline?

-Linux Systeme kommen in der Regel nicht mit einer installierten GNU readline Bibliothek. -Stelle entweder sicher, daß Du die readline-Optionen in src/Makefile.global oder -src/Makefile.custom nicht aktivierst oder installiere die GNU readline Bibliothek.
-Hinweis: Debian Linux (wie FreeBSD) kommt mit einer installierten GNU readline Bibliothek. - -

1.3) [REDHAT] Warum habe ich Probleme mit der fehlenden Bibliothek libdl und der fehlenden dlfcn.h?

-Das Problem erscheint dadurch, daß in der letzten Phase des Kompilierungsvorgangs Funktionen wie -dlopen(), dlclose(), etc. nicht gelinkt werden können. -

-Die libdl Bibliothek wird zum dynamischen Linken von Benutzerfunktionen zur Laufzeit -benutzt. Aus irgendwelchen Gründen wurde diese Bibliothek mit der RedHat-Distribution -nicht ausgeliefert. Anscheinend ist dies in der letzten RedHat 4.0 (Colgate) geändert worden. -

-RedHat hat nun ein neues ld.so RPM-Archiv auf ihrem ftp-Server. Hole Dir einfach: -

-ftp://ftp.redhat.com/pub/redhat/devel/i386/RedHat/RPMS/ld.so-1.7.14-4.i386.rpm -

-Installiere das RPM-Archiv wie üblich und gut ist! -

-Hinweis: Du mußt configure und make clean nach der Installation -der Bibliothek und vor dem erneuten Kompilieren laufen lassen. -

-Es gab einen Bericht über ein zerstörtes System, weil Programme auf -diese Bibliothek während des Updates zugegriffen haben (alles in allem nicht -weiter überraschend). Konsequenterweise ist es eine gute Idee, das System vor der -Installation zu rebooten, um so wenige Programme wie möglich während -des Updates laufen zu haben. In den Single-User-Mode zu gehen ist wahrscheinlich -auch eine gute Idee! -

-Wenn Du lieber den harten Weg gehen willst, kannst Du die Bibliothek und -die Header-Dateien von: -

-ftp://tsx-11.mit.edu/pub/linux/packages/GCC/ld.so-1.7.14.tar.gz -

-holen. Alternativ findest Du vorkompilierte Binaries in -distributions/debian/buzz/binary-i386/base/ld.so-1.7.14-4.deb auf dem gleichen -ftp-Server oder folge den Instruktionen bei Frage 1.2, die den gleichen Fehler -für Slackware 3.1 behandelt. -

-Mache es aber nur auf diese Weise, wenn Du weißt, was Du tust! - - -

1.4) [SLACKWARE 3.1] Warum habe ich Probleme mit der fehlenden Bibliothek libdl und der fehlenden dlfcn.h?

-Das Problem erscheint dadurch, daß in der letzten Phase des Kompilierungsvorgangs Funktionen wie -dlopen(), dlclose(), etc. nicht gelinkt werden können. -

-Siehe die Antwort zu Frage 1.3. -

-Slackware bis Version 3.0 war mit dieser Bibliothek und der Include-Datei ausgestattet und ab späten -3.1er-Versionen scheinen sie auch wieder da zu sein. Aber in frühen 3.1er-Versionen (vor dem 09.09.96) -fehlten sie und es wurden viele CD-ROMs von diesen ersten 3.1.er-Versionen gepresst. -

-Es gab einen Bericht über ein zerstörtes System, weil Programme auf -diese Bibliothek während des Updates zugegriffen haben (alles in allem nicht -weiter überraschend). Konsequenterweise ist es eine gute Idee, das System vor der -Installation zu rebooten, um so wenige Programme wie möglich während -des Updates laufen zu haben. In den Single-User-Mode zu gehen ist wahrscheinlich -auch eine gute Idee! -

-Der einfachste Weg, den Fehler zu beseitigen ist, die Datei ldso.tgz von der a4-Diskette einer -aktuelleren Slackware zu nehmen, diese Datei im Wurzelverzeichnis (/) zu entpacken und dann ein -

sh install/doinst.sh
-durchzuführen. Danach ein
ldconfig
durchführen. -

-Hinweis: Du mußt configure und make clean nach der Installation -der Bibliothek und vor dem erneuten Kompilieren laufen lassen. -

-Falls Du manuell installieren möchtest, installiere zuerst die Datei dlfcn.h in /usr/include. -Dann die libdl.so.1.7.14 (oder was immer die letzte Version ist) in /lib. Dann führe -folgende Befehle aus: -

-cd /lib
-ln -sf libdl.so.1.7.14 libdl.so.1
-ln -sf libdl.so.1 libdl.so
-
-Auf manchen Systemen (je nach Deiner gcc-Konfiguration) können noch folgende -Befehle notwendig sein: -
-cd /usr/lib
-ln -sf /lib/libdl.so .
-
-Und zum Schluß noch ein
ldconfig
-

-Hinweis: Du mußt configure und make clean nach der Installation -der Bibliothek und vor dem erneuten Kompilieren laufen lassen. - -

1.5) Die Kompilierung des Backends schlägt mit der Meldung fehl, daß die Include-Datei dlfcn.h fehlen würde.

-Siehe die Antworten zu den Fragen 1.3 und 1.4. -Und vergiss nicht, falls Du ein a.out-System benutzt, daß Du das dld-Paket installiert haben muß -(welches bei den meisten a.out-Systemen nicht dabei ist), um dlfcn.h zu haben. Siehe Frage 1.11. - -

1.6) GCC meldet, daß er die Option -fpic ignorieren würde.

-Frühere Versionen des gcc nahmen entweder -fpic oder -fPIC an. -Es scheint, daß neuere Versionen (V2.7.2?) -fPIC erfordern. -Falls Du ein ELF-System benutzt, kannst das alles ignoriert werden, da -fPIC -als Standardvorgabe voreingestellt ist. - -Du kannst diese Angabe korrigieren, indem Du CFLAGS_SL in der Datei src/Makefile.global -änderst. - - -

1.7) Ich bekomme Warnungen, wie: warning: cast from pointer to integer of different size

-Diese Warnungen wurden in früheren Versionen von Postgres95 gesichtet und können ignoriert werden. -PostgreSQL V6.0 sollte ohne Warnungen kompiliert werden, außer jenen, die sich auf System-Header-Dateien beziehen -(welche auch ignoriert werden können). - - -

1.8) [SuSE-Linux 4.2-5.3] Wo sind curses und termcap?

-SuSE-Linux 4.2 hat ncurses, nicht curses. Version 4.4 scheint beide Bibliotheken zu haben. -Bei SuSE-Linux ist außerdem die termcap-Bibliothek in /usr/lib/termcap/ und nicht in /usr/lib. - -
PostgreSQL (bis Version V6.0)
-Setze den Wert für CURSES_LIB in src/Makefile.custom auf -lncurses (oder erledige das durch das customize script. -Füge folgende Zeile zur Datei src/Makefile.custom hinzu: -
-LDADD_BE+= -L/usr/lib/termcap
-
-Möglicherweise mußt Du in der Datei src/bin/psql/Makefile folgende Änderung durchführen: -
-ifeq ($(PORTNAME), linux)
-  LD_ADD+=
-
-ändern in: -
-ifeq ($(PORTNAME), linux)
-  LD_ADD+= -ltermcap
-
- -
PostgreSQL (V6.1)
-Das Konfigurationsscript weiß nicht, daß es auch in /usr/lib/termcap nach der termcap-Bibliothek schauen soll. -Du solltest dieses Verzeichnis angeben, wenn es nach zusätzlichen Such-Verzeichnissen fragt. -

-Falls das nicht funkitoniert (Ich habe SuSE nicht, um das zu testen), dann solltest Du nach dem ./configure-Lauf -die Datei src/Makefile.global ändern und in die LDFLAGS-Zeile den Eintrag -ltermcap (nach -lreadline) hinzufügen. -(Alternativ kannst Du auch die Datei src/Makefile.custom ändern, bevor Du ./configure aufrufst.) -

-Einige SuSE-Versionen liefern nur ncurses, deshalb kann es sein, daß Du die -Benutzung von ncurses statt curses erzwingen mußt, indem Du -lcurses in -lncurses änderst. -(bestätigt für SuSE 5.1) -

-

PostgreSQL (V6.4)
-In PostgreSQL V6.4 überprüft configure sowohl das Vorhandensein von -curses, als auch das von ncurses. -In der Zwischenzeit kannst Du den patch von Karl Eichwalder (ke@suse.de) -anwenden: -

-http://www.PostgreSQL.ORG/mhonarc/pgsql-patches/msg00407.html
-oder (mit deutschen Bemerkungen):
-http://www.suse.de/Support/sdb/ke_postgresql-632.html -

-Es gab außerdem einen Bericht, daß beim Update von SuSE 5.0 auf SuSE 5.2 der Link -von libtermcap.so.2.0.8 auf libtermcap.so nicht gesetzt wurde: -

-cd /usr/lib
-ln -s libtermcap.so.2.0.8 libtermcap.so
-
- -

1.9) Warum bekomme ich Probleme mit ld.so?

- -Falls Du Probleme mit ld.so bekommst - eine andere Bibliothek, die im ELF-System für dynamisches Laden -benötigt wird - dann hast Du Deine Systeminstallation oder wahrscheinlicher ein Linux-Update durcheinandergebracht - -Siehe die Fragen 1.3/1.4. Möglicherweise mußt Du ld.so.x.y.z in /lib installieren -und ldconfig laufen lassen. Die aktuellste Version des ld-Packages ist 1.7.14. Zum Zeitpunkt des Schreibens dieser FAQ ist die Version 1.8 noch experimental. - -

1.10) Wieso bekomme ich yy_flush_buffer undefined Fehler?

-Das ist nicht wirklich Linux-spezifisch, aber es tritt häufiger auf alten Linux-Systemen auf. -Du brauchst eine aktuelle Version von flex (2.5.2. oder neuer), um PostgreSQL zu kompilieren. Beachte, daß flex 2.5.3. -einen Bug hat, siehe auch Frage 3.4. - -

1.11) Wie kompiliere ich PostgreSQL auf einem a.out System?

-Als erstes mußt Du die dld-Bibliothek installieren. Diese gibt es auf Sunsite unter -Linux/libs/dld.3.2.7.tar.gz (ftp://sunsite.unc.edu/pub/Linux/libs/dld.3.2.7.tar.gz). -

-Dann füge folgende Zeile in src/Makefile.custom hinzu: -

-LINUX_ELF=
-
-oder benutze das customize Skript - -

1.12) Warum scheitert make mit der Meldung:
- yacc -d /disk2/PostgreSQL/src/backend/parser/gram.y - make: /usr/bin/make: cannot execute binary file

- -Das war ein Problem in frühreren Versionen von Postgres95. Standardmäßig benutzt PostgreSQL bison -y -anstatt yacc. -

-yacc ist normalerweise als Skript implementiert, das bison -y aufruft. Aus verschiedenen Gründen ist -make nicht in der Lage, das Skript auszuführen (verschiedene Versionen von make? Verschiedene Versionen der bash?) -

-Um das zu beheben, ändere einfach die Datei src/mk/port/postgres.mk.linux am Ende. Die Zeile: -

-# YACC = bison -y
-
-wird zu: -
-YACC = bison -y
-
- - -

1.13) Was sind die Bezüge in der Bibliothek X11_LIB zu libsocket und libnsl in der Datei src/Makefile.global?

-Das war ein Problem in Version 1.08 (Sun Solaris spezifisch). Sie sind behoben in 1.09 und 6.0 - -

1.14) [DEBIAN] Wo ist die Bibliothek libtermcap?

-Debian Linux kommt ohne die termcap-Bibliothek und benutzt ncurses (welche terminfo benutzt). -Es gibt keinen Grund, die CURSES_LIB-Variable in src/bin/psql/Makefile zu ändern, da Debian -einen Link von libncurses auf libcurses bereitstellt (im Gegensatz zu SuSE, siehe Frage 1.8) -

-Du kannst die Datei src/bin/psql/Makefile wie folgt ändern: -

-ifeq ($(PORTNAME), linux)
-  LD_ADD+= -ltermcap
-
-in -
-ifeq ($(PORTNAME), linux)
-  LD_ADD+=
- 
- - -

1.15) [REDHAT] Kann ich PostgreSQL als RPM-Archiv bekommen?

-Ja! Michal Mosiewicz (http://www.pdi.lodz.pl/~mimo) -hat ein RPM für PostgreSQL V6.0 auf Intel Architekturen zusammengestellt, -welches er nach ftp://ftp.redhat.org/pub/Incoming/Postgres-6.0-1.i386.rpm -hochgeladen hat. -

-Das ist eine vorkompilierte Version, das Quelltext-RPM stammt vom 03.02.1997. - - - -

1.16) Während ich versuche eine Entwickler-Version unter Linux zu kompilieren, bricht der Vorgang mit folgender - Fehlermeldung ab:
- In file included from /usr/include/sys/sem.h:8,
- from ipc.c:37:
- /usr/include/asm/bitops.h:32: warning: no previous prototype for Set_bit'
- ....
- make: *** [ipc.o] Error 1

- -Das Problem ist, daß Linux keine Prototypen für diese Inline-Funktionen bereithält. Die Lösung -liegt darin, das Makefile in .../src/backend/storage/ipc/ zu ändern: -Ändere die Zeile: -
-CFLAGS+=$(INCLUDE_OPT)
-
-in -
-CFLAGS+=$(INCLUDE_OPT) -Wno-error
-
-Mache dasselbe dann im ../src/backend/storage/lmgr Verzeichnis. - - -

1.17) Beim Kompilieren von PostgreSQL bricht der gcc mit einer Signal 11 Meldung ab.

-Oder genauer: gcc: Internal compiler error: program cc1 got fatal signal 11 -

-Das können Hardware/Speicherprobleme sein. PostgreSQL ist ein großes Programm und große -gcc-Kompilierungsläfe (wie eben PostgreSQL oder eine Kernel-Kompilierung) beanspruchen den Hauptspeicher -wie wenig andere Programme. Dadurch können Fehler auftreten, die in normalen Situationen nicht erscheinen. -Niedrigere Betriebssysteme beanspruchen die Hardware ebenfalls nicht in diesem Maße, deshalb kann es sein, daß Du niemals -Probleme unter DOS/Windows siehst. -

-Mehr Information zu diesem Problem gibt es unter http://www.BitWizard.nl/sig11/ und -in deutsch unter http://www.suse.de/sdb/de/html/kfr_58.html. -

Laut dieser Sig11-FAQ scheint es ein spezielles Problem mit dem RedHat 5.0 gcc auf einem Cyrix-Prozessor zu geben. -Siehe bitte dort nach den Details nach. - -

1.18) Kann ich Version 6.1.1 unter MkLinux installieren?

-Tatsuo Ishii hat das unter MkLinux DR2.1 update2 geschafft, nachdem der kleine Patch -von ftp://ftp.sra.co.jp/pub/cmd/postgres/6.1.1/mklinux.patch.gz -eingespielt wurde. - - -

1.19) Warum stoppt make oder bricht sonstwie ab?

-Es gibt eine Reihe von Reports darüber, daß gmake zu früh aussteigt oder mit einem Segmentation Fault aussteigt. -Das letzte Problem wurde von gmake 3.74 berichtet. Ein Update auf 3.76.1 löste dieses Problem. -Wie auch immer, 3.74 arbeitet bei vielen Leuten zur vollsten Zufriedenheit. Kurz gesagt, upgrade -Deinen gmake auf die aktuellste Version, bevor Du dieses Problem meldest. - -

1.20) Wie kann ich für die Prozessoren 486 oder Pentium optimieren?

-Die Standard-Compilerflags führen keine Optimierung für den 486er oder den Pentium-Prozessor durch. -Um diese Optimierung zu aktivieren, füge wahlweise eine der folgenden Zeilen -der Datei Makefile.custom hinzu: -
-CFLAGS+= -m486
-
-oder -
-CFLAGS+= -mpentium
-
-oder -
-CFLAGS+= -mpentiumpro
-
- -

1.21) Wieso bekomme ich seltsame Ergebnisse beim Drucken von Zeiten (z.B. beim Regressionstest 'timespan')?

-Die Zeit erscheint z.B. als: "4 hours 59 mins 60.00 secs" und nicht als "5 hours" -

-Das ist ein Problem mit der glibc2-Bibliothek, die mit RedHat 5.0 ausgeliefert wird. Update Deine glibc auf die aktuellste RedHat-Version -für v5.0/Hurricane. Alle Versionen vor glibc-2.9.7 scheinen dieses Problem zu haben. - -

1.22) Warum bekomme ich keine shared libraries für libpq, wenn ich Version 6.3.2 kompiliere?

-Es gab eine Last-Minute-Änderung der Linux-Konfiguration für Version 6.3.2. -Siehe für einige Fehlerbehebungen und einen Linux-ELF-Patch in ftp://postgresql.org/pub/patches/ nach. - -

1.23) Warum scheitert der Kompilierungslauf mit Nachrichten, daß F_BOOLIN, F_BOOLOUT und F_BYTEAIN nicht deklariert seien?

-Die komplette Meldung sieht ungefähr so aus: -
-	   -I/usr/include/readline -O2 -Wall -Wmissing-prototypes -I..
-        -Wno-error -c bootstrap.c -o bootstrap.o
-        bootstrap.c:160: `F_BOOLIN' undeclared here (not in a function)
-        bootstrap.c:160: initializer element for `Procid[0].inproc' is not
-        constant
-        bootstrap.c:160: `F_BOOLOUT' undeclared here (not in a function)
-        bootstrap.c:160: initializer element for `Procid[0].outproc' is not
-        constant
-        bootstrap.c:161: `F_BYTEAIN' undeclared here (not in a function)
-        bootstrap.c:161: initializer element for `Procid[1].inproc' is not
-        constant
-
-Solange Du nicht weißt, warum das passiert, ist dieses Problem ziemlich kniffelig, da diese -Konstanten anscheinend nirgendwo definiert werden. -

-Die Lösung ist dafür zu sorgen, daß der cpp in Deinem Pfad erreichbar ist, bevor -make gestartet wird. -

-Auf Redhat 5.1, ist cpp in /usr/lib/gcc-lib/i386-redhat-linux/2.7.2.3 - - - - -

Abschnitt 2: Hilfs- und Zusatzprogramme kompilieren

- -

2.1) Der Linker findet die Bibliothek libX11 nicht, wenn pgtclsh kompiliert werden soll.

-Füge folgende Zeile in src/Makefile.custom hinzu: -
-X11_LIBDIR = /usr/X11R6/lib
-
- -

Abschnitt 3: Laufzeit Probleme

- -

3.1) Ich bekomme die Fehlermeldung _fUnKy_POSTPORT_sTuFf_ undefined, wenn Skripts wie createuser laufen.

-Das ist ein Fehler in Versionen 1.06-1.07 und ist ab Version 1.08 und höher behoben. - -

3.2) Nachdem ich postmaster starte, meldet das System Bad system call (Core dumped)

-Diese Fehlermeldung deutet an, daß Du keinen Shared-Memory-Support in den Kernel einkompiliert hast. -Der Kernel muß mit dieser Option neu kompiliert werden, um diese Eigenschaft hinzuzufügen. - -

3.3) Wenn ich versuche, den Postmaster zu starten, bekomme ich eine Fehlermeldung wie:
- Failed Assertion("!(file != 0):(null)", File:
- "/usr/local/PostgreSQL/src/backend/storage/file/fd.c", Line: 257)
- !(file != 0) (0)
- initdb: could not create template database
- initdb: cleaning up.

- -Deine Berechtigungen für die Datei /dev/null sind falsch gesetzt. -ein ls -l /dev/null sollte folgende Ausgabe zeigen: -
-crw-rw-rw-  1 root  wheel    2,   2 Oct  8 18:41 /dev/null
-
-Korrigiere die Berechtigungen mit: -
-chmod a+rw /dev/null
-
- -

3.4) Warum funktioniert createuser nicht?

-Es gibt ein Problem mit Version 2.5.3 des GNU flex und createuser. Die Möglichkeiten, diesen Fehler zu beheben sind: -Entweder auf die flex-Version 2.5.3 zu gehen, auf Version 2.5.4 zu gehen, oder -den Patch nach doc/README.flex einzuspielen. -

-Die Version 2.5.4. gibt es unter ftp://prep.ai.mit.edu/pub/gnu/flex-2.5.4.tar.gz. - - -

3.5) Wieso bekomme ich einen Fehler, wie:
- IpcMemoryCreate: memKey=155356396 , size=760632 ,
- permission=384IpcMemoryCreate: shmget(..., create, ...)
- failed: Invalid argument

- -Du hast keine IPC-Unterstützung in Deinen Linux-Kernel einkompiliert. -Der Kernel muß mit dieser Option neu kompiliert werden, um diese Eigenschaft hinzuzufügen. - -

3.6) Wieso scheitert der Aufruf von psql mit: psql: can't load library 'libpq.so.1

-Psql wurde mit dynamischen Zugriff auf die libpq-bibliothek kompiliert. -Um dieses Problem zu lösen, solltest Du Dich als root anmelden und die Datei /etc/ld.so.conf editieren. -Füge eine Zeile am Ende hinzu, die den Namen des PostgreSQL-Bibliotheken-Verzeichnis enthält (das -lib-Verzeichnis im PostgreSQL-Installationsverzeichnis) und rufe den Befehl /sbin/ldconfig -v auf. - -Alternativ (und falls Du keinen root-Zugriff hast) kannst Du die LD_LIBRARY_PATH-Variable -benutzen. -Die LD_LIBRARY_PATH-Variable enthält eine durch Doppelpunkt getrennte Liste mit Suchpfaden für -Shared-Bibliotheken. Diese Liste wird durchsucht, bevor auf die Informationen von ldconfig zugegriffen wird. -Unter der bash sieht das ganze so aus: -
-export LD_LIBRARY_PATH='PathToPGSQL'/lib
-
-unter der tcsh so: -
-setenv LD_LIBRARY_PATH 'PathToPGSQL'/lib
-
-wobei 'PathToPGSQL' das Installationsverzeichnis von PostgreSQL ist. -Hinweis: der ldd-Befehl dient dazu, sich die dynamischen Bibliotheken für eine bestimmte -ausführbare Datei anzeigen zu lassen. - - -

3.7) Andere seltsame Verhaltensweisen

-Ich bin mir nicht sicher, welche Symptome alle auftreten können, außer daß gar nichts richtig funktioniert, -aber es stellte sich heraus, daß man sorgsam darauf achten sollte, daß die richtige Version der libpq-Bibliothek -geladen wird. Falls Du alte Versionen in Deinem Bibliothekspfad hast (z.B. in /usr/lib) können diese statt der -neueren Version geladen werden. Schaffe diese alten Versionen beiseite und siehe im übrigen -Frage 3.6 für weitere Details bezüglich dem Laden von Bibliotheken. - -

3.8) Wenn PostgreSQL beim Systemhalt lief, führt Linux beim Neustart jedesmal einen Filesystemcheck (fsck) durch

-Es gab darüber einige Berichte und es scheint, daß dies passiert, wenn PostgreSQL von der /etc/inittab -gestartet wird, wie im INSTALL-Dokument beschrieben. -

-Deshalb wird Dir empfohlen, den postmaster von einem rc-Skript aus zu starten. -Unter einem Slackware-artigem System würdest Du /etc/rc.d/rc.local modifizieren, -um den postmaster zu starten. -

-Unter RedHat-artigen Systemen würdest Du ein SysV-artiges Skript in /etc/rc.d/rc3.d -basierend auf der /etc/rc.d/init.d Schablonen-Datei erstellen. -

-Es gibt eine Beispieldatei unter dem Verzeichnis contrib/linux/postgres.init. -

-Hier ist noch ein anderes Beispiel von John Robinson -welches Du entsprechend anpassen kannst. - -

-#!/bin/sh
-#
-# postgreSQL.init This shell script takes care of starting and stopping
-#               the PostgreSQL postmaster.
-#
-
-# Source function library.
-. /etc/rc.d/init.d/functions
-
-# Source networking configuration.
-. /etc/sysconfig/network
-
-# Check that networking is up.
-[ ${NETWORKING} = "no" ] && exit 0
-
-# See how we were called.
-case "$1" in
-  start)
-        # Start daemons.
-        echo -n "Starting postgres Postmaster daemon:"
-        if [ -z "`pidofproc postmaster`" ]
-        then
-                su postgres -c "/usr/local/pgsql/bin/postmaster -D /home/postgreSQL/data -p 5432 &"
-                echo -n " postmaster"
-        else
-                echo -n " (already running)"
-        fi
-        echo
-        touch /var/lock/subsys/postgres
-        ;;
-  stop)
-        # Stop daemons.
-        echo -n "Shutting down postgres Postmaster daemon: "
-        killall -TERM postmaster 2>/dev/null
-        killall -TERM postgres 2>/dev/null
-        echo
-        rm -f /var/lock/subsys/postgres
-        ;;
-  *)
-        echo "Usage: postgres {start|stop}"
-        exit 1
-esac
-
-exit 0
-
- - -

3.9) Warum dauert Query 32 in den RegressionsTests so lange?

-Das passiert wegen eines Fehlers in den Regressions-Skripten auf Linux-Kisten. -Es gibt - soweit ich weiß - zwei Möglichkeiten, diese Fehler zu umgehen -(die Information stammt von Tatsuo Ishii): -

-1. ändere folgende Zeile in regress.sh: -

-time postgres -texecutor -tplanner -Q bench < bench.sql
-
-in -
-postgres -texecutor -tplanner -Q bench < bench.sql
-
-2. nachdem der Test gelaufen ist, entferne eine Zeile ganz am Ende der Datei bench.out, -die ungefähr so aussieht: -
-85.86user 114.47system 4:49.20elapsed 69%CPU (0avgtext+0avgdata 0maxresident)k
-
-dann gib folgendes auf der Befehlszeile ein: -
-sh ./perquery < bench.out > & bench.out.perquery
-
- - - -

3.10) Warum bekomme ich lustige Rundungsergebnisse in einigen Datums/Zeit-Berechnungen, wie:
- select '4 hours'::timespan;
- liefert '3 hours 59 minutes 60 seconds'
?

- -Du benutzt neue glibc2-Bibliotheken in einer Version kleiner als 2.0.7. Das ist ein mathematisches Rundungsproblem. -Aktualisiere Deine Bibliothek. - - -

3.11) Wieso bekomme ich einen Fehler wie: IpcMemoryCreate: shmget failed (Permission denied)?

-Im Detail erscheint der Fehler mit dieser Meldung:
-
-In detail, a message like this may appear:
-IpcMemoryCreate: shmget failed (Permission denied) 
-key=5432010, size=120, permission=700
-IpcMemoryAttach: shmat failed (Permission denied) id=0
-FATAL 1:  AttachSLockMemory: could not attach segment
-
-Dieser Fehler wird durch nicht gelöschte Segmente im shared memory verursacht. -(Du kannst sie mit dem Programm ipcs sehen. -Benutze das Programm ipcrm, um sie zu löschen. -
-


-


-

- - - - - - - - - - - - - - - - - - - -
Author of the english version
Dr. Andrew C.R. MartinUniversity College London
EMAIL: (Work) martin@biochem.ucl.ac.uk(Home) andrew@stagleys.demon.co.uk
URL: http://www.biochem.ucl.ac.uk/~martin
Tel: (Work) +44(0)171 419 3890(Home) +44(0)1372 275775
-

- - - - - - - - - - - - - - - - - - - -
Translator of the german version
Karsten SchulzLinux Systemhaus Schulz
EMAIL: (Work) schulz@Linux-Systemhaus.de(Home) kaschu@t800.ping.de
URL: http://www.Linux-Systemhaus.de/
Tel: (Work) +49 231 3944432(Fax) +49 231 3944435
-

- - diff --git a/doc/src/FAQ/FAQ_linux_italian.html b/doc/src/FAQ/FAQ_linux_italian.html deleted file mode 100644 index 71303d4d4f2..00000000000 --- a/doc/src/FAQ/FAQ_linux_italian.html +++ /dev/null @@ -1,666 +0,0 @@ - - - - - - - - -
=======================================================
-Frequently Asked Questions (FAQ) per PostgreSQL >= V6.1
-Specifiche per Linux Os
-DA LEGGERE IN CONGIUNZIONE CON LE NORMALI FAQ
-=======================================================
-Ultimo aggiornamento:           Lunedi' 18 Maggio 11:17:00 GMT 1998
-
-Curatore corrente:          Andrew C.R. Martin (martin@biochem.ucl.ac.uk)
-Autore originale:           Andrew C.R. Martin (martin@biochem.ucl.ac.uk)
-Traduzione FAQ in italiano: Daniele Medri 'MaDriD' (madrid@darshan.org)
-
-Cambiamenti in questa versione (* = modificato, + = nuovo, - = rimosso):
-
-+1.21)  Perche' ricevo strani risultati con i tempi di stampa (per esempio
-        nel test di regressione 'timespan'?
- -
Questo file è diviso approsimativamente nel sequente modo:
-1.*)    Istallare PostgreSQL
-2.*)    Compilare programmi accessori
-3.*)    Problemi di esecuzione
-
-
-Domande risposte:
-1.1)    Quali cambiamenti devo fare a src/Makefile.global o a src/Makefile.custom
-        e ci sono altri cambiamenti necessari?
-1.2)    Perche' ricevo problemi con missing libreadline?
-1.3)    [REDHAT] Perche' ricevo problemi di libdl e dlfcn.h perse?
-1.4)    [SLACKWARE 3.1] Perche' ricevo problemi di libdl e dlfcn.h perse?
-1.5)    La mia compilazione si arresta segnalando la mancanza dell'include file
-        dlfcn.h perso.
-1.6)    GCC reclama una ignorata opzione -fpic
-1.7)    Ricevo messaggi di warning (errore) del tipo
-        warning: cast from pointer to integer of different size
-1.8)    [SuSE-Linux 4.2-4.4] Dove sono curses e termcap?
-1.9)    Perche' ho problemi con  ld.so?
-1.10)   Perche' ricevo errori del tipo `yy_flush_buffer undefined'?
-1.11)   Come posso compilare PostgreSQL su un sistema a.out?
-1.12)   Che cosa fallisce con:
-        yacc -d /disk2/PostgreSQL/src/backend/parser/gram.y
-        make: /usr/bin/make: cannot execute binary file
-1.13)   Quali sono i riferimenti in X11_LIB a libsocket e libnsl in
-        src/Makefile.global?
-1.14)   [DEBIAN] Dov'e' libtermcap?
-1.15)   [REDHAT] Posso trovare PostgreSQL come RPM?
-1.16)   Quando tento di compilare una versione in sviluppo sotto Linux, la
-        compilazione fallisce con il seguente messaggio:
-        In file included from /usr/include/sys/sem.h:8,
-                 from ipc.c:37:
-        /usr/include/asm/bitops.h:32: warning: no previous prototype for Set_bit'
-        ....
-        make: *** [ipc.o] Error 1
-1.17)   Quando sto' compilando postgres, gcc riporta un signal 11 e si interrompe.
-1.18)   Posso installare 6.1.1 su MkLinux?
-1.19)   Perche' esce o va in crash?
-1.20)   Come posso ottimizzarlo per un 486 o un processore pentium
-1.21)   Perche' ricevo strani risultati con i tempi di stampa (per esempio
-        nel test di regressione 'timespan'?
-2.1)    Il linker non trova libX11 quando sta' compilando pgtclsh
-3.1)    Ricevo un messaggio tipo  _fUnKy_POSTPORT_sTuFf_ non definito quando
-        lancio uno script come createuser
-3.2)    Lancio postmaster e dopo il sistema dice 'Bad system call(Core 
-        dumped)'
-3.3)    Quando tento di lanciare Postmaster, perche' ricevo un errore del tipo
-        Failed Assertion("!(file != 0):(null)", File:
-        "/usr/local/PostgreSQL/src/backend/storage/file/fd.c", Line: 257)
-        !(file != 0) (0)
-        initdb: could not create template database
-        initdb: cleaning up.
-3.4)    Perche' createuser non funziona?
-3.5)    Perche' ricevo un errore del tipo:
-        IpcMemoryCreate: memKey=155356396 , size=760632 ,
-        permission=384IpcMemoryCreate: shmget(..., create, ...)
-        failed: Invalid argument
-3.6)    Perche' psql fallisce con:
-        psql: can't load library 'libpq.so.1'
-3.7)    Altri comportamenti strani
-3.8)    Quando PostgreSQL e' attivo allo shutdown di sistema, Linux
-        esegue al reboot un fsck al disco.
-3.9)    Perche' la Query 32 nel test di regressione pretende molto tempo?
-3.10)   Perche' ricevo dei risultati arrotondati su date/time aritmetici,
-        come
-           select '4 hours'::timespan;
-        returning '3 hours 59 minutes 60 seconds'?
-
-----------------------------------------------------------------------
-Sezione 1:      Compilare PostgreSQL
-----------------------------------------------------------------------
-
-1.1)    Quali cambiamenti devo fare a src/Makefile.global o a 
-        src/Makefile.custom e ci sono altri cambiamenti necessari?
-
-        I cambiamenti ai makefiles sono piu'facilmente fatti usando
-        lo script di shell per la personalizzazione che si trova nella
-        directory src che scrive un file Makefile.custom appropriato.
-
-        I soli altri cambiamenti che tu devi fare e rimpiazzare Flex se tu
-        hai una versione 2.5.3, la quale ha dei bug che si manifestano al
-        fallimento di createuser (Vedi domanda 3.4)
-
-        Se tu modifichi i makefiles a mano, tu *devi* settare le seguenti
-        variabili:
-                PORTNAME=       linux
-
-        Tu devi anche cambiare quello che segue per settare la tua propria 
-        installazione:
-                POSTGRESDIR
-
-        Se tu cambi sull'opzione USE_TCL, devi settare questo:
-                TCL_INCDIR=
-                TCL_LIBDIR=
-                TCL_LIB=
-                TK_INCDIR=
-                TK_LIBDIR=
-                TK_LIB=
-                X11_INCDIR=
-                X11_LIBDIR=
-                X11_LIB=
-
-        Sul mio sistema Slackware3.0 esse sono:
-                TCL_INCDIR=     /usr/include/tcl
-                TCL_LIBDIR=     /usr/lib
-                TCL_LIB=        -ltcl
-                TK_INCDIR=      /usr/include/tcl
-                TK_LIBDIR=      /usr/lib
-                TK_LIB=         -ltk
-                X11_INCDIR=     /usr/include/X11
-                X11_LIBDIR=     /usr/X386/lib
-                X11_LIB=        -lX11
- 
-        Devi fare ogni altro cambiamento necessario come documentato nel
-        file INSTALL e in Makefile.global
-
-
-1.2)    Perche' ricevo problemi con missing libreadline?
-
-        I sistemi Linux in genere non vengono distribuiti con la libreria
-        Gnu readline installata. Si può in ogni caso o disattivare l'opzione
-        di readline in src/Makefile.global o src/Makefile.custom, oppure
-        installare la libreria GNU stessa (readline).
-
-        Nota che Linux Debian (come FreeBSD) esce con le readline installate.
-
-1.3)    [REDHAT] Perche' ricevo problemi di libdl e dlfcn.h perse??
-
-        Questa manifestazione avvisa che non c'e' la capacita' di linkare
-        funzioni come dlopen(), dlclose(), etc. durante l'ultima fase di compilazione.
-
-        La libreria libdl e' usata per linkare in maniera dinamica le funzioni
-        e rendere flessibile l'avvio dell'applicativo. Per alcune ragioni questa
-        non era presente nella distribuzione Red Hat. La versione Redhat 4.0
-        (Colgate) a colmato a questa mancanza.
-
-        RedHat ha ora una nuova versione di ld.so in formato RPM nei propri siti FTP.
-        Scaricate:
-
-              ftp://ftp.redhat.com/pub/redhat/devel/i386/RedHat/RPMS/ld.so-1.7.14-4.i386.rpm
-
-        Installa il file RPM nella maniera usuale e andra'!
-
-        ATTENZIONE! Devi rilanciare nuovamente il file configure e fare un 
-        make clean dopo aver installato la libreria e prima di ricompilare.
-
-        C'e' stata una sola notizia di sistema corrotto da programmi che 
-        accedevano a queste librerie mentre venivano aggiornate (nessun altra 
-        sorpresa.) Conseguentemente e' una buona idea quella di fare un reboot
-        del sistema prima di installare le nuove librerie e avere pochi
-        processi attivi durante questo upgrade. Lanciare il sistema in
-        modalita' utente singolo (single-user) e' probabilmente una buona idea!
-
-        Se tu vuoi fare la strada piu' dura, puoi ottenere la libreria e 
-        l'header file da:
-        
-                ftp://tsx-11.mit.edu/pub/linux/packages/GCC/ld.so-1.7.14.tar.gz
-
-        Alternativamente puoi trovare i file binari precompilati in 
-        distributions/debian/buzz/binary-i386/base/ld.so-1.7.14-4.deb
-        nel medesimo sito, o seguire le istruzioni date alla domanda 1.2 per
-        correggere lo stesso errore con le aggiornate versioni di Slackware 3.1.
-        Non scegliere questo metodo se non sai quello che stai facendo!
-
-
-
-1.4)    [SLACKWARE 3.1] Perche' ricevo problemi di libdl e dlfcn.h perse??
-
-        Questa manifestazione avvisa che non c'e' la capacita' di linkare
-        funzioni come dlopen(), dlclose(), etc. durante l'ultima fase di compilazione.
- -
        Guarda la risposta alla domanda 1.3. Slackware fino alla versione 3.0
-        era provvista di questa libreria e degli include file e ritornarono nell'ultima
-        versione 3.1, ma la prima versione della 3.1 (prima del 9 settembre 1996)
-        non aveva queste e molte versioni su CD-ROM erano state stampate 
-        con la prima edizione. 
-
-        C'e' stata una sola notizia di sistema corrotto da programmi che 
-        accedevano a queste librerie mentre venivano aggiornate (nessun altra 
-        sorpresa.) Conseguentemente e' una buona idea quella di fare un reboot
-        del sistema prima di installare le nuove librerie e avere pochi
-        processi attivi durante questo upgrade. Lanciare il sistema in
-        modalita' utente singolo (single-user) e' probabilmente una buona idea!
-
-        Per fissare facilmente questo basta ottenere il file ldso.tgz dal quarto
-        dischetto della piu' recente distribuzione Slackware e scompattarlo da
-        dalla directory di root (/) e poi lanciare
-
-                sh install/doinst.sh
-
-        per completare l'installazione. Successivamente lanciare
-
-                ldconfig
-
-        ATTENZIONE! Devi rilanciare nuovamente il file configure e fare un 
-        make clean dopo aver installato la libreria e prima di ricompilare.
-
-        Se vuoi installarla manualmente bisogna installare prima il file
-        dlfcn.h in /usr/include.
-
-        Secondo, installa il file libdl.so.1.7.14 (o qualsiasi altra versione)
-        in /lib, e poi fai:
-
-                cd /lib
-                ln -sf libdl.so.1.7.14 libdl.so.1
-                ln -sf libdl.so.1 libdl.so
-
-        Su certi sistemi (a seconda della personale configurazione di GCC)
-        e' necessario fare:
-
-                cd /usr/lib
-                ln -sf /lib/libdl.so .
-
-        Finalmente
-
-                ldconfig
-
-        ATTENZIONE! Devi rilanciare nuovamente il file configure e fare un 
-        make clean dopo aver installato la libreria e prima di ricompilare.
-
-
-1.5)    La mia compilazione si arresta segnalando la mancanza dell'include file
-        dlfcn.h perso.
-
-        Guarda la risposta 1.3/1.4. Non dimenticare che se stai usando un sistema
-        a.out devi prima avere installato il pacchetto dld (il quale non viene
-        fornito con molti sistemi a.out) per avere dlfcn.h e gli altri. 
-        Guarda la domanda 1.11.
-
-
-1.6)    GCC reclama una ignorata opzione -fpic
-
-        Le prime versioni di GCC accettavano entrambe -fpic o -£PIC.
-        Nelle piu' recenti versioni (V2.7.2?) richiede -£PIC.
-        Se tu stai usando una versione ELF di Linux, questa puo' per sicurezza
-        essere ignorata perche' -£PIC e' di default.
-
-        Puoi correggere questa editando il file src/Makefile.global e cambiare
-        CFLAGS_SL
-
-
-1.7)    Ricevo messaggi di warning (errore) del tipo
-        warning: cast from pointer to integer of different size
-
-        Questi appararivano nelle prime versione di Postgres95 e posso per sicurezza
-        essere ignorate. PostgreSQL V6.0 dovrebbe compilare senza warnings
-        ad eccezione di quelli relativi agli header file di sistema (i quali possono
-        essere ignorati per sicurezza).
-
-1.8)    [SuSE-Linux 4.2-4.4] Dove sono curses e termcap?
-
-        SuSE-Linux 4.2 ha le ncurses ma non le curses. 4.4 ha entrambe.
-        SuSE-Linux ha anche le librerie termcap in /usr/lib/termcap 
-        invece di essere in /usr/lib.
-
-        PostgreSQL (fino alla V6.0)
-        -----------------------
-        Setta il valore delle CURSES_LIB in src/Makefile.custom a -lncurses 
-        (o fai questo attraverso lo script di personalizzazione).
-        Aggiundi la seguente riga al file src/Makefile.custom:
-
-                LDADD_BE+= -L/usr/lib/termcap
-
-        Devi editare il file src/bin/psql/Makefile e cambiare:
-                ifeq ($(PORTNAME), linux)
-                   LD_ADD+=
-        con:
-                ifeq ($(PORTNAME), linux)
-                   LD_ADD+= -ltermcap
-
-        PostgreSQL (V6.1)
-        -----------------
-        Lo script di configurazone non sa' di cercare nella directory 
-        /usr/lib/termcap per le librerie termcap, percio' tu devi specificare
-        questo come una delle directory delle librerie dove cercare.
-
-        Se non funziona (non ho SuSE per verificare che vada)
-        allora lancia configure, edita src/Makefile.global e aggiungi
-        -ltermcap alla linea LDFLAGS
-        (dopo -lreadline). (Alternativamente poi configurare 
-        src/Makefile.custom prima di lanciare configure.)
-
-        Alcune versioni di SuSE forniscono solo ncurses, percio' tu devi
-        forzare l'uso delle ncurses piuttosto che le curses cambiando 
-        -lcurses con -lncurses. (dimostrato per SuSE 5.1)
-
-
-1.9)    Perche' ho problemi con  ld.so?
-
-        Se tu hai problemi con ld.so, un altra libreria richiesta sotto ELF
-        per il caricamento dinamico, allora hai creato disordine con la tua
-        installazione o fatto un upgrade di Linux.
-
-        Guarda le risposte alle domande 1.3/1.4. Devi installare ld.so.x.y.z in
-        /lib e lanciare ldconfig.
-
-        La piu' recente vesione stabile del pacchetto ld eì 1.7.14
-        Mentre scrivo, la versione 1.8.x di ld e' sperimentale. 
-
-1.10)   Perche' ricevo errori del tipo `yy_flush_buffer undefined'?
-
-        Questo non e' specifico per Linux, ma e' comune nelle vecchie istallazione
-        di Linux. Devi avere una versione recente di Flex (2.5.2 o superiore)
-        per compilare PostgreSQL. Nota che Flex 2.5.3 ha dei bug: guarda la 
-        domanda 3.4.
-
-1.11)   Come posso compilare PostgreSQL su un sistema a.out?
-
-        Prima, devi installare la libreria dld. Puoi ottenere questa da Sunsite come:
-        Linux/libs/dld.3.2.7.tar.gz
-        (ftp://sunsite.unc.edu/pub/Linux/libs/dld.3.2.7.tar.gz)
-
-        Secondo, aggiungi la seguente linea al file  src/Makefile.custom:
-                LINUX_ELF=
-        (o usa lo script di configurazione)
-
-1.12)   Che cosa fallisce con:
-        yacc -d /disk2/PostgreSQL/src/backend/parser/gram.y
-        make: /usr/bin/make: cannot execute binary file
-
-        Questo e' un problema delle prime versioni di Postgres95. Il default
-        per PostgreSQL e' di usare bison -y piuttosto che yacc.
-
-        yacc e' generalmente implementato come script che invoca bison -y
-        Per alcune ragioni (certe versioni di make? certe versioni di bash?)
-        make non puo' eseguire questo file di script.
-
-        Per correggere questo, edita semplicemente src/mk/port/postgres.mk.linux
-        e alla fine del file cambia:
-                # YACC = bison -y
-        con
-                YACC = bison -y
-
-1.13)   Quali sono i riferimenti in X11_LIB a libsocket e libnsl in
-        src/Makefile.global?
-
-        Questo era un problema nella versione 1.08 (specifica per Sun Solaris)
-        E' stata fissata nella 1.09 e 6.0
-
-1.14)   [DEBIAN] Dov'e'  libtermcap?
-
-        Debian Linux viene distribuita senza librerie termcap e usa ncurses 
-        (le quali usano terminfo all'interno). Non c'e' bisogno di cambiare la
-        variabile CURSES_LIB  in src/bin/psql/Makefile peche' Debian provvede 
-        con un link da libncurses a libcurses (diversamente da SuSE-Linux --
-        Vedi domanda 1.8).
-
-        Devi editare src/bin/psql/Makefile e commentare i cambiamenti:
-                ifeq ($(PORTNAME), linux)
-                   LD_ADD+= -ltermcap
-        con:
-                ifeq ($(PORTNAME), linux)
-                   LD_ADD+=
-
-
-1.15)   [REDHAT] Posso trovare PostgreSQL come RPM?
-
-        Si! Michal Mosiewicz 
-        (http://www.pdi.lodz.pl/~mimo) ha creato un RPM
-        per PostgreSQL V6.0 per architettura Intel uplodata a  
-        ftp://ftp.redhat.org/pub/Incoming/Postgres-6.0-1.i386.rpm
-
-        Questa e' una precompilata versione, le sorgenti RPM erano come
-        io ho scritto (3 Febbraio 1997).
-
-1.16)   Quando tento di compilare una versione in sviluppo sotto Linux, la
-        compilazione fallisce con il seguente messaggio:
-        In file included from /usr/include/sys/sem.h:8,
-                 from ipc.c:37:
-        /usr/include/asm/bitops.h:32: warning: no previous prototype for Set_bit'
-        ....
-        make: *** [ipc.o] Error 1
-
-        Il problema e' che Linux non prevede prototipi per queste funzioni inline.
-        La soluzione e' di andare dentro la directory .../src/backend/storage/ipc
-        ed editare Makefile.
-        Cambia la linea
-           CFLAGS+=$(INCLUDE_OPT)
-        con
-           CFLAGS+=$(INCLUDE_OPT) -Wno-error
-
-        Fai lo stesso con la directory ../src/backend/storage/lmgr.
-
-1.17)   Quando sto' compilando postgres, gcc riporta un signal 11 e si interrompe.
-        Piu' specificatamente:
-           gcc: Internal compiler error: program cc1 got fatal 
-                signal 11
-
-        Questo e' un problema di hardware/memoria. PostgreSQL e' un grande
-        programma, e una larga compilazione con gcc (come la compilazione
-        di PostgreSQL o la compilazione del kernel) stressa la memoria come
-        molti altri programmi, mostrando errori che non appaiono nelle normali
-        operazioni. Sistemi operativi inferiori non riescono a stressare l'hardware
-        in questo modo, per questo non vedrai mai questi errori sotto DOS/Windows. 
-
-        Maggiori informazioni in merito:
-           http://www.bitwizard.nl/sig11
-
-        Da questo Sig11 FAQ, sembra essere un errore specifico con Redhat 5.0 
-        lanciando su un processore Cyrix. Guarda il link superiore per i dettagli!
-
-1.18)   Posso installare 6.1.1 su MkLinux?
-
-        Tatsuo Ishii  ha fatto questo su MkLinux DR2.1 update2 dopo una piccola
-        patch disponibile presso:
-        ftp://ftp.sra.co.jp/pub/cmd/postgres/6.1.1/mklinux.patch.gz
-
-1.19)   Perche' esce o va in crash??
-
-        Ci sono state diverse segnalazioni di gmake, dove in tutte si usciva
-        subito e c'era una seg faulting. Il problema piu' marcato e' stato 
-        riportato con gmake 3.74 - upgradandolo alla 3.76.1 si e' risolto.
-        Comunque, la versione 3.74 e' funzionante per altri tipi di setup.
-        In breve, prova ad upgradare gmake all'ultima versione che puoi trovare
-        prima di riportarlo come un problema.
-
-1.20)   Come posso ottimizzarlo per un 486 o un processore pentium
-
-        Le flags di compilazione per default non permettono l'optimizzazione per 486
-        o per processori Pentium. Per aggiungerla come ottimizzazione, edita
-        Makefile.custom e aggiungi:
-
-           CFLAGS+= -m486
-
-        o (per i nuovi compilatori che molte persone non stanno usando)
-
-           CFLAGS+= -mpentium
-        o
-           CFLAGS+= -mpentiumpro
-
-1.21)   Perche' ricevo strani risultati con i tempi di stampa (per esempio
-        nel test di regressione 'timespan'?
-        Le ore appaiono come: '4 hours 59 mins 60.00 secs'
-        invece di '5 hours'
-
-        Questo e' un problema con le librerie glibc2 le quali appaiono con
-        RedHat 5.0. Aggiorna le tue glibc con le ultime versioni di RedHat per
-        v5.0/hurricane. Tutto quello che e' anteriore alle glibc-2.0.7 ha 
-        questi problemi.        
-
-----------------------------------------------------------------------
-Sezione 2:      Compilare programmi accessori
-----------------------------------------------------------------------
-
-2.1)    Il linker non trova libX11 quando sta' compilando pgtclsh
-
-        Aggiungi la seguente riga al file src/Makefile.custom
-                X11_LIBDIR = /usr/X11R6/lib
-
-
-----------------------------------------------------------------------
-Sezione 3:      Problemi di esecuzione
-----------------------------------------------------------------------
-
-3.1)    Ricevo un messaggio tipo  _fUnKy_POSTPORT_sTuFf_ non definito quando
-        lancio uno script come createuser
-
-        Questo e' un bug nella V.1.06-V1.07 di Postgres ed e' fissata con la versione
-        1.08 o superiore.
-
-3.2)    Lancio postmaster e dopo il sistema dice 'Bad system call(Core 
-        dumped)'
-
-        Questo indica che non hai compilato il supporto per la memoria condivisa nel
-        kernel. Devi ricompilare il kernel per aggiungere questa feature.
-
-3.3)    Quando tento di lanciare Postmaster, perche' ricevo un errore del tipo
-        Failed Assertion("!(file != 0):(null)", File: 
-        "/usr/local/PostgreSQL/src/backend/storage/file/fd.c", Line: 257)
-        !(file != 0) (0)
-        initdb: could not create template database
-        initdb: cleaning up.
-
-        I permessi sul file /dev/null sono sbagliati. 
-
-        ls -l /dev/null should give you something like:
-
-                crw-rw-rw-  1 root  wheel    2,   2 Oct  8 18:41 /dev/null
-
-        Correggi i permessi con:
-
-                chmod a+rw /dev/null
-
-3.4)    Perche' createuser non funziona?
-
-        C'e' un problema con la versione 2.5.3 di GNU Flex e createuser.
-        Le tue opzioni devono recedere a Flex V2.5.2, aggiornale alla V2.5.4 o
-        applica una patch alla V2.5.3 la quale e' fornita in doc/README.flex
-        Puoi ottenere la V.2.5.4 da:
-        ftp://prep.ai.mit.edu/pub/gnu/flex-2.5.4.tar.gz
-
-3.5)    Perche' ricevo un errore del tipo:
-        IpcMemoryCreate: memKey=155356396 , size=760632 ,
-        permission=384IpcMemoryCreate: shmget(..., create, ...)
-        failed: Invalid argument
-
-        Non hai compilato il supporto IPC nel kernel di Linux.
-        Devi ricompilare il kernel con questa opzione.
-
-3.6)    Perche' psql fallisce con:
-        psql: can't load library 'libpq.so.1'
-
-        Psql e' stata compilata per linkarsi dinamicamente con la libreria libpq.
-
-        Per risolvere questo, devi accedere come root ed editare il file
-                /etc/ld.so.conf
-        Aggiungi una linea singola alla fine, la quale prende il nome della directory
-        delle librerie di PostgreSQL (la sottodirectory delle librerie 
-        dell'installazione diPostgreSQL) e lancia
-                /sbin/ldconfig -v
-
-        Alternativamente, (e se tu non hai accesso come root), devi usare la
-        variabile di ambiente LD_LIBRARY_PATH.
-
-        La variabile LD_LIBRARY_PATH contiene una lista di paths per ricercare le librerie
-        condivise. Questa lista e' ricercata prima delle librerie specificate da ldconfig.
-
-        Percio' sotto Bash, devi fare qualcosa del tipo:
-                export LD_LIBRARY_PATH='PathToPGSQL'/lib
-        o, usando tcsh
-                setenv LD_LIBRARY_PATH 'PathToPGSQL'/lib
-        rimpiazzando 'PathToPGSQL' con l'appropriato path alla tua directory PostgreSQL
-        al top level.
-        Nota che il comando ldd puo' essere eseguito su un programma linkato dinamicamente
-        alla lista di paths a tutte le librerie condivise sopra, alle quali gli eseguibili
-        dipendono.
-
-
-3.7)    Altri comportamenti strani
-
-        Non sono sicuro quali siano i sintomi che non permettono la corretta esecuzione,
-        ma si puo' ipotizzare che le ragioni vadano oltre il regolare funzionamento del 
-        loader dinamico nel caricare la corretta versione delle librerie libpq. 
-        Se hai una versione vecchia dai una occhiata al path delle librerie
-        (per esempio in /usr/lib) che dovrebbero caricare nelle nuove versioni che intendi
-        far girare. Renditi sicuro di prendere queste nel percorso e guarda la Domanda 3.6 
-        per i dettagli in merito al caricamento dinamico delle librerie.
-
-3.8)    Quando PostgreSQL e' attivo allo shutdown di sistema, Linux
-        esegue al reboot un fsck al disco.
-
-        Ci sono state alcune segnalazioni di questo e sembre essere il
-        risultato di lanciare PostgreSQL dal /etc/inittab come suggerito
-        nel file INSTALL.
-
-        Si raccomanda percio' di lanciare il postmaster da un rc script.
-        Sotto una versione di tipo Slackware, devi modificare /etc/rc.d/rc.local
-        per lanciare il postmaster. Sotto una versione in stile RedHat
-        devi creare uno script in stile SysV sotto /etc/rc.d/rc3.d basato
-        sul file /etc/rc.d/init.d.
-
-        C'e' un esempio di file in contrib/linux/postgres.init
-
-        Un altro file di esempio è proposto da John Robinson 
-         il quale puo' essere modificato a seconda delle esigenze:
-
-#!/bin/sh
-#
-# postgreSQL.init This shell script takes care of starting and stopping
-#               the PostgreSQL postmaster.
-#
-
-# Source function library.
-. /etc/rc.d/init.d/functions
-
-# Source networking configuration.
-. /etc/sysconfig/network
-
-# Check that networking is up.
-[ ${NETWORKING} = "no" ] && exit 0
-
-# See how we were called.
-case "$1" in
-  start)
-        # Start daemons.
-        echo -n "Starting postgres Postmaster daemon:"
-        if [ -z "`pidofproc postmaster`" ]
-        then
-                su postgres -c "/usr/local/pgsql/bin/postmaster -D /home/postgreSQL/data -p 5432 &"
-                echo -n " postmaster"
-        else
-                echo -n " (already running)"
-        fi
-        echo
-        touch /var/lock/subsys/postgres
-        ;;
-  stop)
-        # Stop daemons.
-        echo -n "Shutting down postgres Postmaster daemon: "
-        killall -TERM postmaster 2>/dev/null
-        killall -TERM postgres 2>/dev/null
-        echo
-        rm -f /var/lock/subsys/postgres
-        ;;
-  *)
-        echo "Usage: postgres {start|stop}"
-        exit 1
-esac
-
-exit 0
-
-
-
-3.9)    Perche' la Query 32 nel test di regressione pretende molto tempo?
-
-        Questo e' un bug nello script di regressione presente su Linux Os.
-        Ci sono due raggiri per evitarli (informazione di Tatsuo Ishii ):
-
-        1. cambia quello che segue in regress.sh:
-                time postgres -texecutor -tplanner -Q bench < bench.sql
-        a:
-                postgres -texecutor -tplanner -Q bench < bench.sql
-
-        2. dopo aver lanciato il test, rimuovi la linea finale di 
-        bench.out, qualcosa del tipo:
-                85.86user 114.47system 4:49.20elapsed 69%CPU (0avgtext+0avgdata 0maxresident)k
-        poi digita:
-                sh ./perquery < bench.out > & bench.out.perquery
-
-
-
-3.10)   Perche' ricevo dei risultati arrotondati su date/time aritmetici,
-        come
-           select '4 hours'::timespan;
-        returning '3 hours 59 minutes 60 seconds'?
-
-        Stai usando le nuove librerie glibc2 e hai una versione precedene alla
-        2.0.7. E' un problema di arrotondamento matematico nella libreria.
-        Aggiorna le tue librerie.
- -
-----------------------------------------------------------------------------
-Dr. Andrew C.R. Martin                             University College London
-EMAIL: (Work) martin@biochem.ucl.ac.uk    (Home) andrew@stagleys.demon.co.uk
-URL:   http://www.biochem.ucl.ac.uk/~martin
-Tel:   (Work) +44(0)171 419 3890                    (Home) +44(0)1372 275775
-----------------------------------------------------------------------------
-Daniele Medri 'MaDriD' - e-mail: madrid@darshan.org web: www.darshan.org  
-----------------------------------------------------------------------------
- - - -- cgit v1.2.3