Documentation PostgreSQL 9.0.23 > Administration du serveur > Installation à partir du code source sur WindowsTM
PrécédentNotes spécifiques à des plateformes Construire libpq avec Visual C++ ou Borland C++Suivant

16. Installation à partir du code source sur Windows

Il est recommandé que la plupart des utilisateurs téléchargent la distribution binaire pour Windows, disponible sous la forme d'un package d'installation one-clickTM à partir du site web de PostgreSQLTM. Construire à partir des sources a pour seule cible les personnes qui développent PostgreSQLTM ou des extensions.

Il existe différentes façons de construire PostgreSQL sur WindowsTM. La façon la plus simple de le faire est d'utiliser les outils Microsoft. Pour cela, il faut installer une version supportée du Microsoft Platform SDKTM et d'utiliser le compilateur inclus. Il est aussi possible de construire PostgreSQL avec Microsoft Visual C++ 2005 ou 2008TM. Dans certains cas, il faut installer le Platform SDKTM en plus du compilateur.

Il est aussi possible de construire PostgreSQL en utilisant les outils de compilation GNU fournis par MinGWTM ou en utilisant CygwinTM pour les anciennes versions de WindowsTM.

Enfin, la bibliothèque d'accès pour les clients (libpq) peut être construit en utilisant Visual C++ 7.1TM ou Borland C++TM pour la compatibilité avec des applications liées statiquement en utilisant ces outils.

La construction par MinGWTM ou CygwinTM utilise le système habituel de construction, voir Chapitre 15, Procédure d'installation de PostgreSQLTM du code source et les notes spécifiques dans Section 15.10.5, « MinGW/Windows Natif » et Section 15.10.2, « Cygwin ». Ces constructions ne peuvent pas générer des exécutables 64 bits. CygwinTM n'est pas recommandé, et devrait seulement être utilisé pour les anciennes versions de WindowsTM où la construction native ne fonctionne pas, comme par exemple Windows 98TM. MinGWTM est seulement recommandé si vous construisez les autres modules avec. Les exécutables officiels sont construits avec Visual StudioTM.

16.1. Construire avec Visual C++ ou le Platform SDK

PostgreSQL peut être construit en utilisant la suite de compilation Visual C++ de Microsoft. Ces compilateurs peuvent être soit Visual StudioTM, soit Visual Studio ExpressTM soit certaines versions du Platform SDKTM. Si vous n'avez pas déjà un environnement Visual StudioTM configuré, la façon la plus simple est d'utiliser les compilateurs du Platform SDKTM, téléchargement libre chez Microsoft.

PostgreSQL supporte les compilateurs de Visual Studio 2005TM et Visual Studio 2008TM. Lors de l'utilisation du Platform SDK seul ou lors de la construction pour Windows 64 bits, seul Visual Studio 2008TM est supporté. Visual Studio 2010TM n'est pas encore supporté.

Lors d'une compilation avec le Platform SDKTM, les versions 6.0 à 7.0 du SDK sont supportées. Les versions plus anciennes ou plus récentes ne fonctionneront pas. En particulier, les versions 7.0a et ultérieures ne fonctionneront pas car elles incluent les compilateurs de Visual Studio 2010TM.

Les outils pour construire en utilisant Visual C++TM se trouvent dans le répertoire src/tools/msvc. Lors de la construction, assurez-vous qu'il n'y a pas d'outils provenant de MinGWTM ou CygwinTM dans le chemin (PATH) de votre environnement. Dans Visual StudioTM, lancez l'invite de Visual Studio. Dans le Platform SDKTM, lancez le CMD shell listé sous le répertoire SDL du menu de démarrage. Si vous souhaitez construire une version 64-bits, vous devez utiliser la version 64-bit de la commande, et vice versa. Toutes les commandes devraient être exécutées à partir du répertoire src\tools\msvc.

Avant de lancer la construction, vous aurez besoin d'éditer le fichier config.pl pour y modifier toutes les options de configuration nécessaires, ainsi que les chemins utilisés par les bibliothèques de tierces parties. La configuration complète est déterminée tout d'abord en lisant et en analysant le fichier config_default.pl, puis en appliquant les modifications provenant du fichier config.pl. Par exemple, pour indiquer l'emplacement de votre installation de PythonTM, placez la ligne suivante dans config.pl :

 $config->{python} = 'c:\python26';
 

Vous avez seulement besoin de spécifier les paramètres qui sont différents de la configuration par défaut, spécifiée par le fichier config_default.pl.

Si vous avez besoin de configurer d'autres variables d'environnement, créez un fichier appelé buildenv.pl et placez-y les commandes souhaitées. Par exemple, pour ajouter le chemin vers bison s'il ne se trouve pas dans le PATH, créez un fichier contenant :

 $ENV{PATH}=$ENV{PATH} . ';c:\chemin\vers\bison\bin';
 

16.1.1. Pré-requis

Les outils supplémentaires suivants sont requis pour construire PostgreSQLTM. Utilisez le fichier config.pl pour indiquer les répertoires où se trouvent les bibliothèques.

Microsoft Platform SDKTM

Il est recommandé de mettre à jour avec la dernière version disponible du Microsoft Platform SDKTM, téléchargeable sur http://www.microsoft.com/downloads/.

Vous devez toujours inclure la partie Windows Headers and Libraries du SDK. Si vous installez le Platform SDKTM incluant les compilateurs (Visual C++ Compilers), vous n'avez pas de Visual StudioTM.

ActiveState PerlTM

ActiveState Perl est requis pour exécuter les scripts de construction. Le Perl de MinGW et de Cygwin ne fonctionnera pas. Il doit aussi être présent dans le PATH. Les binaires de cet outil sont téléchargeables à partir de http://www.activestate.com (Note : la version 5.8 au minimum est requise, la distribution standard libre est suffisante).

Les produits suivants ne sont pas nécessaires pour commencer, mais sont requis pour installer la distribution complète. Utilisez le fichier config.pl pour indiquer les répertoires où sont placées les bibliothèques.

ActiveState TCLTM

Requis pour construire PL/TCL (Note : la version 8.4 est requise, la distribution standard libre est suffisante).

BisonTM et FlexTM

Bison et Flex sont requis pour construire à partir d'une extraction du Git, mais ils ne sont pas nécessaires si vous utilisez une version packagée. Notez que seul Bison 1.875 ou les versions 2.2 et ultérieures fonctionneront. De plus, Flex version 2.5.31 ou une version ultérieure est requise. Bison est téléchargeable à partir de http://gnuwin32.sourceforge.net. Flex est disponible sur http://www.postgresql.org/ftp/misc/winflex/.

[Note]

Note

La distribution Bison provenant de GnuWin32 contient un bug qui pose problème lorsque Bison est installé dans un répertoire dont le nom contient des espaces (ce qui est le cas par défaut sur les installations anglaises, C:\Program Files\GnuWin32). Pensez plutôt à l'installer dans C:\GnuWin32 pour éviter ce bug.

DiffTM

Diff est nécessaire pour exécuter les tests de régression, et peut être téléchargé à partir de http://gnuwin32.sourceforge.net.

GettextTM

Gettext est requis pour construire le support NLS, et peut être téléchargé à partir de http://gnuwin32.sourceforge.net. Notez que les binaires, dépendances et fichiers développeurs sont tous nécessaires.

MIT KerberosTM

Requis pour le support de l'authentification Kerberos. MIT Kerberos est téléchargeable sur http://web.mit.edu/Kerberos/dist/index.html.

libxml2TM et libxsltTM

Requis pour le support du XML. Les binaires sont disponibles sur http://zlatkovic.com/pub/libxml et les sources sur http://xmlsoft.org. Notez que libxml2 nécessite iconv, qui est disponible sur le même site web.

opensslTM

Requis pour le support de SSL. Les binaires peuvent être téléchargés à partir de http://www.slproweb.com/products/Win32OpenSSL.html alors que les sources sont disponibles sur http://www.openssl.org.

ossp-uuidTM

Requis pour le support d'UUID-OSSP (seulement en contrib). Les sources peuvent être récupérées sur le site ossp.org.

PythonTM

Requis pour la construction de PL/Python. Les binaires sont téléchargeables sur http://www.python.org.

zlibTM

Requis pour le support de la compression dans pg_dump et pg_restore. Les binaires sont disponibles à partir de http://www.zlib.net.

16.1.2. Considérations spéciales pour Windows 64-bits

PostgreSQL ne peut être compilé pour l'architecture x64 que sur Windows 64-bits, il n'y a pas de support pour les processeurs Itanium.

Mixer des versions 32-bits et des versions 64-bits dans le même répertoire de construction n'est pas supporté. Le système de compilation détectera automatiquement si l'environnement est 32-bits ou 64-bits, et construira PostgreSQL en accord. Pour cette raison, il est important de commencer avec la bonne invite de commande avant de lancer la compilation.

Pour utiliser une bibliothèque de tierce partie côté serveur comme pythonTM ou opensslTM, cette bibliothèque doit aussi être en 64-bits. Il n'y a pas de support pour le chargement d'une bibliothèque 32-bits sur un serveur 64-bits. Plusieurs bibliothèques de tierce partie que PostgreSQL supporte ne sont disponibles qu'en version 32-bits, auquel cas elles ne peuvent pas être utilisées avec un PostgreSQL 64-bits.

16.1.3. Construction

Pour construire tout PostgreSQL dans la configuration par défaut, exécutez la commande :

 
 build
 
 

Pour construire tout PostgreSQL dans la configuration de débogage, exécutez la commande :

 
 build DEBUG
 
 

Pour construire un seul projet, par exemple psql, exécutez les commandes :

 
 build psql
 
 
 build DEBUG psql
 
 

Pour modifier la configuration de construction par défaut, placez ce qui suit dans le fichier buildenv.pl :

Il est aussi possible de construire à partir de l'interface de Visual Studio. Dans ce cas, vous devez exécuter :

 
 perl mkvcbuild.pl
 
 

à partir de l'invite, puis ouvrir le fichier pgsql.sln généré (dans le répertoire racine des sources) dans Visual Studio.

16.1.4. Nettoyage et installation

La plupart du temps, la récupération automatique des dépendances dans Visual Studio prendra en charge les fichiers modifiés. Mais, s'il y a eu trop de modifications, vous pouvez avoir besoin de nettoyer l'installation. Pour cela, exécutez simplement la commande clean.bat, qui nettoiera automatiquement les fichiers générés. Vous pouvez aussi l'exécuter avec le paramètre dist, auquel cas il se comporte comme make distclean et supprime les fichiers flex/bison en sortie.

Par défaut, tous les fichiers sont écrits dans un sous-répertoire de debug ou release. Pour installer ces fichiers en utilisant les emplacements standards et pour générer aussi les fichiers requis pour initialiser et utiliser la base de données, exécutez la commande :

 
 install c:\destination\directory
 
 

16.1.5. Exécuter les tests de régression

Pour exécuter les tests de régression, assurez-vous que vous avez terminé la construction de toutes les parties requises. Ensuite, assurez-vous que les DLL nécessaires au chargement de toutes les parties du système (comme les DLL Perl et Python pour les langages de procédure) sont présentes dans le chemin système. Dans le cas contraire, configurez-les dans le fichier buildenv.pl. Pour lancer les tests, exécutez une des commandes suivantes à partir du répertoire src\tools\msvc :

 
 vcregress check
 
 
 vcregress installcheck
 
 
 vcregress plcheck
 
 
 vcregress contribcheck
 
 

Pour modifier la planification utilisée (en parallèle par défaut), ajoutez-la à la ligne de commande, comme :

 
 vcregress check serial
 
 

Pour plus d'informations sur les tests de régression, voir Chapitre 30, Tests de régression.

16.1.6. Construire la documentation

Construire la documentation PostgreSQL au format HTML nécessite plusieurs outils et fichiers. Créez un répertoire racine pour tous ces fichiers et stockez-les dans des sous-répertoires conformément à la liste ci-dessous.

OpenJade 1.3.1-2

À télécharger à partir de http://sourceforge.net/projects/openjade/files/openjade/1.3.1/openjade-1_3_1-2-bin.zip/download et à décompresser dans le sous-répertoire openjade-1.3.1.

DocBook DTD 4.2

À télécharger à partir de http://www.oasis-open.org/docbook/sgml/4.2/docbook-4.2.zip et à décompresser dans le sous-répertoire docbook.

DocBook DSSSL 1.79

À télécharger à partir de http://sourceforge.net/projects/docbook/files/docbook-dsssl/1.79/docbook-dsssl-1.79.zip/download et à décompresser dans le sous-répertoire docbook-dsssl-1.79.

ISO character entities

À télécharger à partir de http://www.oasis-open.org/cover/ISOEnts.zip et à décompresser dans le sous-répertoire docbook.

Modifiez le fichier buildenv.pl et ajoutez une variable pour l'emplacement du répertoire racine, par exemple :

 $ENV{DOCROOT}='c:\docbook';
 

Pour construire la documentation, exécutez la commande builddoc.bat. Notez que ceci exécutera la construction une deuxième fois, pour générer les index. Les fichiers HTML générés seront dans le répertoire doc\src\sgml.

AltStyle によって変換されたページ (->オリジナル) /