<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <HTML> <HEAD> <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9"> <TITLE>Database-SQL-RDBMS HOW-TO document for Linux (PostgreSQL Object Relational Database System): Versione di PostgreSQL per Windows 95/Windows NT</TITLE> <LINK HREF="PostgreSQL-HOWTO-28.html" REL=next> <LINK HREF="PostgreSQL-HOWTO-26.html" REL=previous> <LINK HREF="PostgreSQL-HOWTO.html#toc27" REL=contents> </HEAD> <BODY> <A HREF="PostgreSQL-HOWTO-28.html">Avanti</A> <A HREF="PostgreSQL-HOWTO-26.html">Indietro</A> <A HREF="PostgreSQL-HOWTO.html#toc27">Indice</A> <HR> <H2><A NAME="s27">27. Versione di PostgreSQL per Windows 95/Windows NT</A></H2> <P>I binari di PostgreSQL per Windows NT, sono disponibili presso: <UL> <LI> Binari di PostgreSQL per Windows NT <A HREF="http://www.askesis.nl">http://www.askesis.nl</A></LI> <LI> <A HREF="http://www.postgresql.org">http://www.postgresql.org</A></LI> </UL> Scaricate i binari, scompattateli, e seguite le istruzioni descritte in <A HREF="#installapgsql">Installazione di PostgreSQL</A> partendo dal passo 13. <P>Se volete ri-compilare l'albero dei sorgenti, seguite le istruzioni più sotto. La versione per NT è stata realizzata con il pacchetto cygwin32 di Cygnus, che contiene gcc, gmake, per Win NT/95. <UL> <LI> Il pacchetto Cygwin 32 si trova presso <A HREF="http://www.cygnus.com/misc/gnu-win32">http://www.cygnus.com/misc/gnu-win32</A></LI> </UL> Presso questo sito potete anche ottenere il file cdk.exe (il file auto estraente di gnu-win32) <H2><A NAME="ss27.1">27.1 Autori della versione per NT</A> </H2> <P>Gli autori della versione di PostgreSQL per Windows NT, sono: <UL> <LI> Daniel Horak <A HREF="mailto:horak@mmp.plzen-city.cz">horak@mmp.plzen-city.cz</A></LI> <LI> Joost Kraaijeveld <A HREF="mailto:JKraaijeveld@askesis.nl">JKraaijeveld@askesis.nl</A></LI> <LI> Kevin Lo <A HREF="mailto:kevlo@FreeBSD.org">kevlo@FreeBSD.org</A></LI> <LI> Home page della versione per NT <A HREF="http://www.freebsd.org/~kevlo/postgres/portNT.html">http://www.freebsd.org/~kevlo/postgres/portNT.html</A></LI> </UL> <H2><A NAME="ss27.2">27.2 Installazione del pacchetto Cygwin</A> </H2> <P> <OL> <LI> Scaricate <A HREF="ftp://go.cygnus.com/pub/sourceware.cygnus.com/cygwin/latest/full.exe">ftp://go.cygnus.com/pub/sourceware.cygnus.com/cygwin/latest/full.exe</A></LI> <LI> Eseguite full.exe ed installate nella directory c:\Unix\Root .</LI> <LI> Eseguite Cygwin. Digitate 'mount --help' per leggere la documentazione. Potete usare l'opzione -f per forzare il montaggio. Poi eseguite "umount / " e "mount c:\Unix\Root /"</LI> </OL> <H2><A NAME="ss27.3">27.3 Messa a punto della finestra di Bash</A> </H2> <P>Dopo l'installazione del pacchetto Cygwin, fate quanto segue per impostare l'ambiente di lavoro: <P>1. Installate l'editor 'Vim', evoluzione di Vi. Vedere <A HREF="http://metalab.unc.edu/LDP/HOWTO/Vim-HOWTO.html">http://metalab.unc.edu/LDP/HOWTO/Vim-HOWTO.html</A><P>2. La finestra predefinita della bash di cygwin, è una finestra di 24 righe con sfondo nero. Per impostare il colore di sfondo e le dimensioni della finestra di bash, fate click su NT-Start->Control-panel->MS DOS; cambiate il colore di sfondo nel colore grigio, e portate la lunghezza della finestra a 70 righe. <P>(OPPURE) fate click col tasto destro sulla barra del titolo della finestra, e cambiate le proprietà. <P>3. Aprite in edit cygnus.bat , situato nella directory c:\cygnus\cywinb20 , ed impostate quanto segue: <HR> <PRE> set HOME=c:\cygnus\cygwinb20 bash --login </PRE> <HR> <P>Elaborate anche /.bash_profile , e mettete queste righe <HR> <PRE> set -o vi PATH=$PATH:/usr/local/bin:/usr/bin export PATH </PRE> <HR> <P>4. Per abilitare l'elaborazione dello storico della riga di comando, impartite il comando: <P>bash$ set -o vi <P>Usando i tasti l,k,j,h potete usare i comandi di vi per elaborare lo storico della riga di comando. Potete così ripetere o modificare i comandi precedentemente digitati, risparmiando tempo nella digitazione. <P>5. Potete effettuare il montaggio di dispositivi/directory usando questo comando: <HR> <PRE> bash$ umount / bash$ mount "c:\cygnus" / bash$ mount "c:\cygnus\cygwin-b20\postgres" /usr/local/pgsql </PRE> <HR> <P>6. Leggete l'help in linea con: <HR> <PRE> bash$ mount --help bash$ ls --help </PRE> <HR> <H2><A NAME="ss27.4">27.4 Installazione dei tool di Andy Piper</A> </H2> <P> <OL> <LI>Recatevi presso <A HREF="ftp://ftp.xemacs.org/pub/xemacs/aux/">ftp://ftp.xemacs.org/pub/xemacs/aux/</A> e scaricate cygwin-b20-local.tar.bz2 nella directory c:/Unix/Root .</LI> <LI> cd c:/Unix/Root; bunzip2 cygwin-b20-local.tar.bz2</LI> <LI> tar -xvf cygwin-b20-local.tar</LI> <LI> cd /local/bin; sh check_cygwin_setup.sh</LI> <LI> Dopo aver superato il passo 4, vedrete il seguente messaggio: <HR> <PRE> You don't have /bin would you like to mount cygwin as /bin?" [ y/n ] Selezionate 'n', e alle altre opzioni va selezionato 'y' </PRE> <HR> </LI> <LI> mount c:/Unix/Root/cygwin-b20/H-i586-cygwin32/i586-cygwin32/bin /bin</LI> <LI> cd c:/Unix/Root/cygwin-b20/H-i586-cygwin32/i586-cygwin32; mkdir libexec share man etc sbin info</LI> <LI> cp -R /local/{ bin,libexec,share,man,etc,sbin,info,include }</LI> </OL> <H2><A NAME="ss27.5">27.5 Installazione del pacchetto Cygwin32 IPC di Ludovic Lange</A> </H2> <P> <OL> <LI> Recatevi presso <A HREF="http://www.multione.capgemini.fr/tools/pack_ipc">http://www.multione.capgemini.fr/tools/pack_ipc</A> e scaricate cygwin32_ipc-1.03.tgz nella directory c:/Unix/Root .</LI> <LI> tar -zxvf cygwin32_ipc-1.03.tgz</LI> <LI> cd cygwin32_ipc-1.03/src ed eseguite 'make'</LI> <LI> mkdir -p c:/usr/local/{bin,include,lib,include/sys} <HR> <PRE> cp /cygwin32_ipc-1.03/bin/* c:/usr/local/bin cp /cygwin32_ipc-1.03/include/sys/* c:/usr/local/include/sys cp /cygwin32_ipc-1.03/lib/* c:/usr/local/lib cp c:/usr/local/bin/* /bin cp c:/Unix/Root/cygwin-b20/H-i586-cygwin32/bin/* /bin </PRE> <HR> </LI> <LI> mount c:/usr/local/bin /usr/local/bin <HR> <PRE> mount c:/usr/local/include /usr/local/include mount c:/usr/local/lib /usr/local/lib cp /local/lib/* /usr/local/lib </PRE> <HR> </LI> </OL> <H2><A NAME="installapgsql"></A> <A NAME="ss27.6">27.6 Installazione di PostgreSQL </A> </H2> <P> <OL> <LI> Scaricate l'ultima versione del codice sorgente di PostgreSQL</LI> <LI> Postgres tratta tutti i file come binari, ed appaiono quindi i caratteri lf/cr, perciò eseguiamo le azioni 2, 3, 4, e 5: <HR> <PRE> mkdir -p c:/Postgres/{Source,Binary} mkdir c:/Postgres/Binary/pgsql mkdir -p /usr/src/pgsql mkdir -p /usr/local/pgsql </PRE> <HR> </LI> <LI> Copiate il codice sorgente di Postgres nella directory c:/Postgres/Source , poi <HR> <PRE> tar -zxvf postgresql-6.5.3.tar.gz </PRE> <HR> </LI> <LI> mv postgresql-6.5.3 pgsql</LI> <LI> Ora montate le directory: <HR> <PRE> mount c:/Postgres/Source/pgsql /usr/src/pgsql mount c:/Unix/Root/cygwin-b20/share /sw/cygwin-b20/share </PRE> <HR> </LI> <LI> mkdir -p /usr/local/pgsql/{bin,include,lib,data}</LI> <LI> cd /usr/src/pgsql/src/win32</LI> <LI> Copiate i file header: <HR> <PRE> cp un.h c:/Unix/Root/cygwin-b20/H-i586-cygwin32/i586-cygwin32/include/sys cp endian.h c:/Unix/Root/cygwin-b20/H-i586-cygwin32/i586-cygwin32/include cp tcp.h c:/Unix/Root/cygwin-b20/H-i586-cygwin32/i586-cygwin32/include/netinet </PRE> <HR> </LI> <LI> ln -s /usr/local/lib /usr/src/pgsql/src/backend/libpostgres.a</LI> <LI> cd /usr/src/pgsql/src, poi eseguite './configure'</LI> <LI> make > make.txt 2>&1</LI> <LI> make install > make.install.txt 2>&1</LI> <LI> cp /usr/local/pgsql/lib/pq.dll /usr/local/pgsql/bin</LI> <LI> Dopo il make install dovrete cambiare tutti i file di testo nella directory bin e lib, in modo che essi non contengano cose come cr/lf ed eof.</LI> <LI> Utilizzare un qualsiasi editor per creare .bashrc nella directory /, come segue: <HR> <PRE> PATH=$PATH:/usr/local/pgsql/bin:/usr/local/bin PGDATA=/usr/local/pgsql/data PGLIB=/usr/local/pgsql/lib LD_LIBRARY_PATH=/usr/local/pgsql/lib:/usr/local/lib export LD_LIBRARY_PATH PATH PGDATA PGLIB </PRE> <HR> </LI> <LI> source /.bashrc, poi eseguite 'initdb --username=xxxx' Notate che il proprietario del sistema DB deve essere diverso dal root/amministratore</LI> <LI> Modificate il file /usr/local/pgsql/data/pg_hba.conf, come segue: <HR> <PRE> host all 163.17.11.109 255.255.255.0 trust </PRE> <HR> </LI> <LI> ipc-daemon.exe&</LI> <LI> postmaster -i&</LI> <LI> Eseguite ' psql -h nome_host template1'</LI> </OL> <HR> <A HREF="PostgreSQL-HOWTO-28.html">Avanti</A> <A HREF="PostgreSQL-HOWTO-26.html">Indietro</A> <A HREF="PostgreSQL-HOWTO.html#toc27">Indice</A> </BODY> </HTML>