1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
4 <meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7 This file is generated from xml source: DO NOT EDIT
8 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
10 <title>Compiler Apache pour Microsoft Windows - Serveur HTTP Apache Version 2.5</title>
11 <link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
12 <link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
13 <link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
14 <script src="../style/scripts/prettify.min.js" type="text/javascript">
17 <link href="../images/favicon.ico" rel="shortcut icon" /></head>
18 <body id="manual-page"><div id="page-header">
19 <p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p>
20 <p class="apache">Serveur HTTP Apache Version 2.5</p>
21 <img alt="" src="../images/feather.png" /></div>
22 <div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
24 <a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.5</a> > <a href="./">Notes spécifiques à certaines
25 plates-formes</a></div><div id="page-content"><div id="preamble"><h1>Compiler Apache pour Microsoft Windows</h1>
27 <p><span>Langues Disponibles: </span><a href="../en/platform/win_compiling.html" hreflang="en" rel="alternate" title="English"> en </a> |
28 <a href="../fr/platform/win_compiling.html" title="Français"> fr </a> |
29 <a href="../ko/platform/win_compiling.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
33 <p>Il y a de nombreux points importants à connaître avant de
34 compiler Le serveur HTTP Apache pour Microsoft Windows. Avant de commencer, lisez le
35 document <a href="windows.html">Utiliser le serveur HTTP Apache avec Microsoft
38 <p>httpd peut être compilé sous Windows en utilisant une chaîne de
39 compilation basée sur cmake, ou à partir de fichiers projet Visual
40 Studio maintenus par les développeurs de httpd. La chaîne de
41 compilation basée sur cmake supporte directement davantage de
42 versions de Visual Studio, mais possède actuellement des
43 fonctionnalités très limitées.</p>
46 <div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#requirements">Prérequis</a></li>
47 <li><img alt="" src="../images/down.gif" /> <a href="#unixsrcbuild">Compilation à partir des sources Unix</a></li>
48 <li><img alt="" src="../images/down.gif" /> <a href="#commandbuild">Compilation à partir de la ligne de commandes</a></li>
49 <li><img alt="" src="../images/down.gif" /> <a href="#workspacebuild">Compilation depuis l'espace de travail IDE de Developer
51 <li><img alt="" src="../images/down.gif" /> <a href="#exportingmakfiles">Export des fichiers .mak de la ligne de commandes</a></li>
52 <li><img alt="" src="../images/down.gif" /> <a href="#installation">Installation</a></li>
53 <li><img alt="" src="../images/down.gif" /> <a href="#projectcomponents-warn">Avertissement à propos de la compilation d'Apache à partir de
54 l'arborescence de développement</a></li>
55 <li><img alt="" src="../images/down.gif" /> <a href="#cmake">Compilation de httpd avec cmake</a></li>
56 </ul><h3>Voir aussi</h3><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
57 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
59 <h2><a name="requirements" id="requirements">Prérequis</a><a title="Lien permanent" href="#requirements" class="permalink">¶</a></h2>
63 <p>Pour compiler Apache, l'environnement doit satisfaire aux
64 conditions suivantes :</p>
70 <p>Assurez-vous de disposer d'un minimum de 200 Mo d'espace
71 disque disponible. Après l'installation, Apache occupe environ
72 80 Mo d'espace disque, plus l'espace réservé aux journaux et au
73 cache, la taille de ces derniers pouvant augmenter rapidement.
74 Les besoins réels en espace disque dépendent étroitement de la
75 configuration choisie et des bibliothèques ou modules tiers
76 installés, en particulier lorsqu'OpenSSL est mis en oeuvre.
77 Comme de nombreux fichiers sont au format texte et donc
78 facilement compressibles, l'utilisation de la compression du
79 système de fichiers NTFS divise ces besoins par deux.</p>
83 <p>Correctifs requis</p>
85 <p>Le binaire httpd est compilé à l'aide de nombreux correctifs
86 appliqués aux paquets tiers, ce qui permet de s'assurer que le
87 code fourni est bien compilable et déboguable. Ces correctifs
88 sont disponibles à <a href="http://www.apache.org/dist/httpd/binaries/win32/patches_applied/">http://www.apache.org/dist/httpd/binaries/win32/patches_applied/</a>,
89 et il est recommandé de les appliquer afin d'obtenir un
90 résultat identique aux binaires "officiels" distribués par
95 <p>Microsoft Visual C++ 6.0 (Visual Studio 97) ou supérieur.</p>
97 <p>Apache peut être compilé en utilisant l'outil ligne de
98 commande, ou depuis l'espace de travail IDE Visual Studio. Pour
99 la compilation depuis la ligne de commandes, l'environnement
100 doit comporter les variables the <code>PATH</code>,
101 <code>INCLUDE</code>, <code>LIB</code>, ainsi que d'autres
102 variables qui peuvent être définies via le script
103 <code>vcvars32.bat</code> :</p>
105 <div class="note">Vous pouvez vous procurer le paquet du Processeur Visual
106 Studio pour votre ancienne version de Visual Studio, ou une
107 version complète (et non Express) d'une édition plus récente de
108 Visual Studio pour l'assembleur ml.exe. Ceci vous permettra, si
109 vous le souhaitez, de compiler OpenSSL en utilisant une
110 implémentation du code d'assemblage plus efficace.</div>
112 <div class="note">Seule la chaîne d'outils de compilation de Microsoft est
113 supportée de manière suivie par les contributeurs actifs à httpd.
114 Bien que le projet accepte régulièrement des correctifs pour
115 s'assurer que MinGW et d'autre outils de compilation
116 fonctionnent, ou même pour les améliorer, ils ne sont pas
117 maintenus de manière suivie et sont même souvent hors d'état
118 de fonctionner à certains stades du développement normal.</div>
122 <p>Le SDK de la plate-forme Windows mis à jour, février 2003 ou
125 <p>Un SDK approprié pour la plate-forme Windows est inclus par
126 défaut dans les versions complètes (et non Express/lite) de
127 Visual C++ 7.1 (Visual Studio 2002) et supérieures ; les
128 utilisateurs peuvent ignorer ces étapes, à moins qu'ils aient
129 choisi d'utiliser une version plus récente ou différente du SDK.</p>
131 <p>Pour pouvoir utiliser Visual C++ 6.0 or 7.0 (Studio 2000
132 .NET), l'environnement du SDK de la plate-forme doit être préparé en utilisant le
133 script <code>setenv.bat</code> (installé par le SDK de la plate-forme) avant de
134 lancer la compilation en ligne de commande ou l'interface GUI
135 msdev/devenv. L'installation du SDK de la plate-forme pour les
136 versions Express de Visual Studio (2003 et supérieures) devrait
137 ajuster l'environnement par défaut de manière appropriée.</p>
139 <div class="example"><p><code>
140 "c:\Program Files\Microsoft Visual Studio\VC98\Bin\VCVARS32"<br />
141 "c:\Program Files\Platform SDK\setenv.bat"
150 <p>De nombreuses étapes recommandées ici nécessitent un
151 interpréteur perl durant le processus de préparation de la
154 <p>Pour installer Apache à partir du système de compilation, de
155 nombreux fichiers sont modifiés via l'utilitaire
156 <code>awk.exe</code>. awk effectue la modification des fichiers
157 au moment de l'installation ; il a été choisi car il nécessite
158 un téléchargement de petite taille (par rapport à Perl ou
159 WSH/VB). Le site de Brian Kernighan <a href="http://www.cs.princeton.edu/~bwk/btl.mirror/">http://www.cs.princeton.edu/~bwk/btl.mirror/</a> propose un
160 binaire précompilé pour Win32, <a href="http://www.cs.princeton.edu/~bwk/btl.mirror/awk95.exe">http://www.cs.princeton.edu/~bwk/btl.mirror/awk95.exe</a>, que
161 vous devez enregistrer sous le nom <code>awk.exe</code> (plutôt
162 que <code>awk95.exe</code>).</p>
164 <div class="note">Si awk.exe n'est pas trouvé, la cible install du fichier
165 Makefile.win n'effectuera aucune substitution dans les fichiers
166 .conf installés. Vous devez modifier manuellement les fichiers
167 .conf installés afin de permettre au serveur de démarrer.
168 Recherchez et remplacez toutes les balises "@token@" par une
169 valeur appropriée.</div>
171 <div class="note">L'IDE Visual Studio ne trouvera le chemin de
172 <code>awk.exe</code> que dans la variable PATH, ou dans le
173 chemin des exécutables spécifié par l'option de menu Tools ->
174 Options -> (Projects ->) Directories. Assurez-vous
175 qu'awk.exe est bien dans votre chemin système.</div>
177 <div class="note">Notez aussi, si vous utilisez les outils Cygwin (<a href="http://www.cygwin.com/">http://www.cygwin.com/</a>), que
178 l'utilitaire awk de nomme <code>gawk.exe</code> et que le
179 fichier <code>awk.exe</code> est en fait un lien symbolique vers
180 le fichier <code>gawk.exe</code>. Le shell de commandes Windows
181 ne reconnaît pas les liens symboliques, et par conséquent la
182 compilation d'InstallBin échouera. Pour contourner le problème,
183 vous pouvez supprimer le lien <code>awk.exe</code> de
184 l'installation de Cygwin, et copier <code>gawk.exe</code> vers
185 <code>awk.exe</code>. Notez aussi que les portages cygwin/mingw
186 de gawk 3.0.x étaient bogués ; veuillez par conséquent effectuer
187 une mise à jour vers la version 3.1.x avant l'utilisation de
188 tout portage de gawk.</div>
192 <p>[Optionnel] bibliothèque zlib (pour le module
193 <code class="module"><a href="../mod/mod_deflate.html">mod_deflate</a></code>)</p>
195 <p>Zlib doit être installée dans un sous-répertoire du
196 répertoire <code>srclib</code> et nommé <code>zlib</code>. Elle
197 doit être compilée directement à cette place. Zlib est
198 disponible à l'adresse <a href="http://www.zlib.net/">http://www.zlib.net/</a> -- le
199 fonctionnement correct du module <code class="module"><a href="../mod/mod_deflate.html">mod_deflate</a></code> a
200 été vérifié avec la version 1.2.3.</p>
202 <div class="example"><p><code>
203 nmake -f win32\Makefile.msc<br />
204 nmake -f win32\Makefile.msc test
209 <p>[Optionnel] Bibliothèques OpenSSL (pour le module
210 <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> et <code>ab.exe</code> avec le support
213 <div class="note">La bibliothèque OpenSSL est un logiciel de chiffrement. Le
214 pays dans lequel vous résidez peut imposer des restrictions à
215 l'importation, la possession, l'utilisation, et/ou la
216 réexportation vers un autre pays des logiciels de chiffrement.
217 AVANT d'utiliser tout logiciel de chiffrement, veuillez
218 consulter la législation de votre pays, les règles et politiques
219 d'importation, de possession, ou d'utilisation, et de
220 réexportation des logiciels de chiffrement, afin de déterminer
221 si vous en avez le droit. Voir <a href="http://www.wassenaar.org/">http://www.wassenaar.org/</a>
222 pour plus de détails.</div>
224 <p>La configuration et la compilation d'OpenSSL nécessite
225 l'installation de perl.</p>
227 <p>Pour pouvoir compiler <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> ou le projet
228 <code>abs.exe</code>, qui devient ab.c avec le support SSL
230 télécharger OpenSSL à l'adresse <a href="http://www.openssl.org/source/">http://www.openssl.org/source/</a>,
231 et l'installer dans un sous-répertoire du répertoire
232 <code>srclib</code> que vous nommerez <code>openssl</code>. Afin
233 de préparer OpenSSL à la liaison avec le module Apache mod_ssl
234 ou abs.exe, et désactiver les fonctionnalités d'Openssl grévées
235 de brevets, vous pouvez utiliser la commande de compilation
238 <div class="example"><p><code>
239 perl Configure no-rc5 no-idea enable-mdc2 enable-zlib VC-WIN32
240 -Ipath/to/srclib/zlib -Lpath/to/srclib/zlib<br />
242 nmake -f ms\ntdll.mak
245 <div class="note">Il est déconseillé d'utiliser zlib-dynamic, car la charge
246 de la décompression des flux SSL est alors transférée à la
247 première requête qui doit charger la dll zlib. Notez que le
248 correctif proposé active le drapeau -L afin de pouvoir
249 fonctionner avec les compilations Windows, corrige le nom de
250 zdll.lib et s'assure que les fichiers .pdb sont générés afin de
251 pouvoir résoudre les problèmes. Si l'assembleur n'est pas
252 installé, vous devez ajouter no-asm ci-dessus et utiliser le
253 script ms\do_ms.bat à la place de ms\do_masm.bat.</div>
257 <p>[Optionnel] Bibliothèques de bases de données (pour
258 <code class="module"><a href="../mod/mod_dbd.html">mod_dbd</a></code> et <code class="module"><a href="../mod/mod_authn_dbm.html">mod_authn_dbm</a></code>)</p>
260 <p>La bibliothèque apr-util fournit un accès aux fonctionnalités
261 clients dbm (base de données à base de clés) et dbd (base de
262 données à base de requêtes) au serveur httpd et à certains de
263 ses modules, comme les modules d'authentification et
264 d'autorisation. Les fournisseurs sdbm dbm et odbc dbd sont
265 compilés automatiquement.</p>
267 <p>Le support dbd inclut le paquet instantclient Oracle, MySQL,
268 PostgreSQL et sqlite. Par exemple, pour les compiler tous,
269 définissez LIB de façon à inclure le chemin des bibliothèques,
270 INCLUDE de façon à inclure le chemin des en-têtes, et PATH de
271 façon à inclure le chemin des dll et bin de chacun des quatre
272 SDK, et définissez la variable d'environnement DBD_LIST de façon
273 à indiquer au processus de compilation quels SDKs pilotes
274 clients du sont correctement installés ; par exemple :</p>
276 <div class="example"><p><code>
277 set DBD_LIST=sqlite3 pgsql oracle mysql
280 <p>De manière similaire, le support dbm peut être étendu avec
281 DBM_LIST pour compiler un fournisseur Berkeley DB (db) et/ou un
282 fournisseur gdbm, en configurant tout d'abord de la même manière
283 LIB, INCLUDE et PATH afin de s'assurer que les bibliothèques et
284 en-têtes de la bibliothèque client sont bien disponibles.</p>
286 <div class="example"><p><code>
290 <div class="note">En fonction du choix des distributions de bases de
291 données, il peut s'avérer nécessaire de modifier le nom des
292 cibles de l'édition de liens (par exemple gdbm.lib à la place de
293 libgdb.lib) listées dans les fichiers .dsp/.mak des répertoires
294 srclib\apr-util\dbd ou ...\dbm correspondants.</div>
296 <p>Voir le fichier README-win32.txt pour plus d'informations à
297 propos de l'obtention des différents SDKs pilotes de bases de
303 </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
304 <div class="section">
305 <h2><a name="unixsrcbuild" id="unixsrcbuild">Compilation à partir des sources Unix</a><a title="Lien permanent" href="#unixsrcbuild" class="permalink">¶</a></h2>
309 <p>Le projet du serveur HTTP Apache à pour politique de ne fournir
310 que des sources de type Unix. Les paquets source de type Windows
311 disponibles en téléchargement ont été élaborés par des
312 contributeurs, et ne seront pas forcément reconduits pour toutes les
313 versions. Vous pouvez cependant compiler le serveur sous Windows à
314 partir des sources Unix en ajoutant quelques étapes supplémentaires.</p>
317 <li>Téléchargez et ouvrez le tarball source Unix de la dernière
318 version du serveur HTTP Apache.</li>
319 <li>Téléchargez et ouvrez le tarball source Unix de la dernière
320 version de APR, APR-Util et APR-Iconv, et copier l'arborescence
321 obtenue dans httpd-2.x.x\srclib\apr, httpd-2.x.x\srclib\apr-util
322 et httpd-2.x.x\srclib\apr-iconv</li>
323 <li>Ouvrez la console et placez-vous au niveau du répertoire httpd-2.x.x</li>
324 <li>Exécutez l'utilitaire de conversion de fins de ligne</li>
327 <div class="example"><p><code>
328 perl srclib\apr\build\lineends.pl
331 <p>Vous pouvez maintenant compiler le serveur via l'environnement de
332 développement Visual Studio en utilisant l'IDE. Les compilations
333 du serveur en ligne de commande ne sont possibles avec des sources
334 de type Unix que si vous exportez les fichiers .mak comme indiqué
338 </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
339 <div class="section">
340 <h2><a name="commandbuild" id="commandbuild">Compilation à partir de la ligne de commandes</a><a title="Lien permanent" href="#commandbuild" class="permalink">¶</a></h2>
344 <p><code>Makefile.win</code> est le makefile principal ou racine
345 d'Apache. Pour compiler Apache sous Windows, utilisez simplement une
346 des commandes suivantes pour compiler la version
347 <code>release</code> ou <code>debug</code> :</p>
349 <div class="example"><p><code>
350 nmake /f Makefile.win _apacher<br /><br />
351 nmake /f Makefile.win _apached
355 <p>Ces deux commandes effectuent la compilation d'Apache. Cependant,
356 avec la deuxième, les fichiers résultants ne seront pas optimisés,
357 ce qui va faciliter l'examen pas à pas du code pour trouver des
358 bogues et résoudre les problèmes.</p>
360 <p>Vous pouvez indiquer vos choix en matière de fournisseurs dbd et
361 dbm à l'aide des variables (d'environnement) additionnelles de make
362 DBD_LIST et DBM_LIST ; voir les commentaires à propos des
363 [Optionnel] Bibliothèques de bases de données ci-dessus. Consultez
364 les commentaires initiaux dans Makefile.win pour plus d'options
365 pouvant être fournies lors de la compilation.</p>
367 </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
368 <div class="section">
369 <h2><a name="workspacebuild" id="workspacebuild">Compilation depuis l'espace de travail IDE de Developer
370 Studio</a><a title="Lien permanent" href="#workspacebuild" class="permalink">¶</a></h2>
374 <p>Apache peut aussi être compilé depuis l'environnement de
375 développement Visual Studio de VC++. Pour simplifier ce processus,
376 l'espace de travail Visual Studio <code>Apache.dsw</code> est
377 fourni. Cet espace de travail expose la liste complète des projets
378 <code>.dsp</code> actifs nécessaires à l'installation binaire
379 complète d'Apache. Il inclut les dépendances entre projets afin que
380 ces derniers soient compilés selon l'ordre approprié.</p>
382 <p>Ouvrez l'espace de travail <code>Apache.dsw</code>, et
383 sélectionnez <code>InstallBin</code> (compilation
384 <code>Release</code> ou <code>Debug</code>, selon vos souhaits)
385 comme Active Project. <code>InstallBin</code> provoque la
386 compilation de tous les projets concernés, puis invoque
387 <code>Makefile.win</code> pour installer les exécutables et dlls
388 compilés. Vous pouvez modifier la valeur de <code>INSTDIR=</code>
389 via la configuration de <code>InstallBin</code>, onglet Général,
390 entrée ligne de commandes de compilation. La valeur par défaut de
391 <code>INSTDIR</code> est le répertoire <code>/Apache2</code>. Si
392 vous désirez effectuer un test de compilation (sans installation),
393 sélectionnez le projet <code>BuildBin</code>.</p>
395 <p>Les fichiers projets <code>.dsp</code> sont distribués au format
396 Visual Studio 6.0 (98). Visual C++ 5.0 (97) les reconnaît. Les
397 utilisateurs de Visual Studio 2002 (.NET) et versions supérieures
398 doivent convertir <code>Apache.dsw</code> et les fichiers
399 <code>.dsp</code> en un projet <code>Apache.sln</code>, ainsi que
400 les fichiers <code>.msproj</code> ; assurez-vous de reconvertir le
401 fichier <code>.msproj</code> si l'un des fichiers source
402 <code>.dsp</code> est modifié ! Cette opération est vraiment très
403 simple, il suffit de réouvrir <code>Apache.dsw</code> dans l'IDE
404 VC++ 7.0 et de le reconvertir.</p>
407 <div class="note">Il y a une erreur dans la conversion .vcproj des fichiers
408 .dsp. devenv.exe interprète mal le drapeau
409 /D pour les drapeaux RC contenant de grandes /D'éfinitions entourées
410 de guillemets, et contenant elles-mêmes des espaces. Ainsi, la
412 <div class="example"><p><code>
413 perl srclib\apr\build\cvtdsp.pl -2005
415 va convertir les drapeaux /D pour les drapeaux RC afin d'utiliser
416 une syntaxe alternative, interprétable ; malheureusement, cette
417 syntaxe n'est pas supportée par Visual Studio 97 ou ses fichiers
418 .mak exportés. Ces drapeaux /D permettent de transmettre la longue
419 description des fichiers de mod_apachemodule.so à leurs compilations
420 d'identificateur de version de ressource .rc partagée.</div>
424 <p>Les utilisateurs de Visual Studio 2002 (.NET) et versions
425 supérieures doivent aussi utiliser
426 la boîte de dialogue Configuration Manager du menu Build pour
427 décocher les deux versions <code>Debug</code> et
428 <code>Release</code> des modules <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code>
429 et <code class="module"><a href="../mod/mod_deflate.html">mod_deflate</a></code> pour <code>abs</code>. Ces modules
431 en invoquant <code>nmake</code> ou directement l'IDE avec la cible
432 <code>BinBuild</code> pour compiler ces modules de manière
433 conditionnelle si les sous-répertoires de <code>srclib</code>
434 <code>openssl</code> et/ou <code>zlib</code> existent, et en
435 fonction des définitions des variables d'environnement
436 <code>DBD_LIST</code> et <code>DBM_LIST</code>.</p>
438 </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
439 <div class="section">
440 <h2><a name="exportingmakfiles" id="exportingmakfiles">Export des fichiers .mak de la ligne de commandes</a><a title="Lien permanent" href="#exportingmakfiles" class="permalink">¶</a></h2>
445 <p>Les fichiers <code>.mak</code> exportés posent plus de problèmes,
446 mais les utilisateurs de Visual C++ 5.0 en ont besoin pour compiler
447 <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code>, abs (<code class="program"><a href="../programs/ab.html">ab</a></code> avec support
448 SSL) et/ou <code class="module"><a href="../mod/mod_deflate.html">mod_deflate</a></code>. Les fichiers .mak
449 supportent aussi un choix plus large de distributions de chaînes
450 d'outils C++, comme Visual Studio Express.</p>
452 <p>Vous devez tout d'abord compiler tous les projets afin de créer
453 toutes les cibles dynamiques auto-générées, de façon à ce que les
454 dépendances puissent être interprétées correctement. Compilez
455 l'ensemble du projet depuis l'IDE Visual Studio 6.0 (98), en
456 utilisant la cible <code>BuildAll</code>, puis utilisez le menu de
457 projet Export pour tous les makefiles (en cochant "with
458 dependencies"). Utilisez la commande suivante pour transformer les
459 chemins absolus en chemins relatifs de façon à ce que la compilation
460 puisse s'effectuer depuis n'importe quelle position dans
463 <div class="example"><p><code>
464 perl srclib\apr\build\fixwin32mak.pl
467 <p>Vous devez exécuter cette commande depuis la <em>racine</em> de
468 l'arborescence des sources de httpd. Tout fichier projet
469 <code>.mak</code> et <code>.dep</code> du répertoire courant et de
470 ses sous-répertoires sera corrigé, et les repères de temps ajustés
471 en fonction des <code>.dsp</code>.</p>
473 <p>Vérifiez toujours le SDK de la plate-forme ou autres chemins
474 fichiers locaux, spécifiques à la machine dans les fichiers
475 <code>.mak</code> et <code>.dep</code> générés. Le répertoire
476 <code>DevStudio\Common\MSDev98\bin\</code> (VC6) contient un fichier
477 <code>sysincl.dat</code> qui énumère toutes les exceptions. Mettez à
478 jour ce fichier (en particulier les chemins avec slashes et
479 anti-slashes, tels que <code>sys/time.h</code> et
480 <code>sys\time.h</code>) de façon à ignorer ces nouvelles
481 dépendances. Inclure les chemins d'installation locale dans un
482 fichier <code>.mak</code> distribué fera échouer la
485 <p>Si vous soumettez un patch qui modifie les fichiers projet, nous
486 devons valider la modification de ces fichiers projet au format
487 Visual Studio 6.0. Les modifications doivent êtres simples, avec un
488 minimum de drapeaux de compilation et d'édition de liens qui
489 pourront être reconnus par tous les environnements Visual
492 </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
493 <div class="section">
494 <h2><a name="installation" id="installation">Installation</a><a title="Lien permanent" href="#installation" class="permalink">¶</a></h2>
499 <p>Une fois compilé, Apache doit être installé dans le répertoire
500 racine du serveur. La valeur par défaut est le répertoire
501 <code>\Apache2</code>, sur le même disque.</p>
503 <p>Pour compiler et installer automatiquement tous les fichiers dans
504 le répertoire <em>rep</em> désiré, utilisez une des commandes
505 <code>nmake</code> suivantes :</p>
507 <div class="example"><p><code>
508 nmake /f Makefile.win installr INSTDIR=<em>dir</em><br />
509 nmake /f Makefile.win installd INSTDIR=<em>dir</em>
512 <p>L'argument <em>rep</em> de <code>INSTDIR</code> permet de
513 spécifier le répertoire d'installation ; il peut être omis si Apache
514 doit être installé dans <code>\Apache22</code> (du lecteur de disque
517 </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
518 <div class="section">
519 <h2><a name="projectcomponents-warn" id="projectcomponents-warn">Avertissement à propos de la compilation d'Apache à partir de
520 l'arborescence de développement</a><a title="Lien permanent" href="#projectcomponents-warn" class="permalink">¶</a></h2>
524 <div class="note">Notez que seuls les fichiers <code>.dsp</code> sont
525 maintenus d'une distribution <code>release</code> à l'autre. Les
526 fichiers <code>.mak</code> ne sont PAS régénérés, suite à
527 l'énorme perte de temps des relecteurs . Vous ne
528 pouvez donc pas utiliser les commandes <code>NMAKE</code>
529 ci-dessus pour compiler des fichiers de projet <code>.dsp</code>
530 révisés si vous n'exporter pas ensuite vous-même tous les
531 fichiers <code>.mak</code> du projet. Ceci n'est pas nécessaire
532 si vous effectuez la compilation depuis l'environnement
533 Microsoft Developer Studio.</div>
535 </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
536 <div class="section">
537 <h2><a name="cmake" id="cmake">Compilation de httpd avec cmake</a><a title="Lien permanent" href="#cmake" class="permalink">¶</a></h2>
540 <p>La documentation principale pour ce mécanisme de compilation se trouve
541 dans le fichier <code>README.cmake</code> situé dans l'arborescence
542 des sources. Consultez ce fichier pour des instructions détaillées.</p>
544 <p>Pour compiler httpd avec cmake, vous devez compiler APR et APR-util
545 séparément. Consultez les fichiers <code>README.cmake</code> de ces
546 projets pour obtenir des instructions.</p>
548 <p>Les principales limitations de la compilation basée sur cmake sont
549 héritées du projet APR-util et sont énumérées ci-dessous à cause de
550 leur impact sur httpd :</p>
553 <li>Il n'est pas possible de compiler le projet APR-iconv avec
554 cmake, et la compilation de APR-util ne peut pas utiliser de projet
555 APR-iconv précompilé. A cause de cela, il n'est pas possible
556 d'utiliser <code class="module"><a href="../mod/mod_charset_lite.html">mod_charset_lite</a></code> et probablement
557 d'autres modules tiers.</li>
558 <li>La compilation du sous-projet APR-util avec cmake ne supporte
559 pas la plupart des bibliothèques optionnelles DBM et DBD utilisées
560 par les fichiers projet Visual Studio inclus. Cela limite les
561 serveurs de bases de données d'arrière-plan supportés par de
562 nombreux modules tiers ou inclus.</li>
566 <div class="bottomlang">
567 <p><span>Langues Disponibles: </span><a href="../en/platform/win_compiling.html" hreflang="en" rel="alternate" title="English"> en </a> |
568 <a href="../fr/platform/win_compiling.html" title="Français"> fr </a> |
569 <a href="../ko/platform/win_compiling.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
570 </div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
571 <script type="text/javascript"><!--//--><![CDATA[//><!--
572 var comments_shortname = 'httpd';
573 var comments_identifier = 'http://httpd.apache.org/docs/trunk/platform/win_compiling.html';
575 if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
576 d.write('<div id="comments_thread"><\/div>');
577 var s = d.createElement('script');
578 s.type = 'text/javascript';
580 s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
581 (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
584 d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
586 })(window, document);
587 //--><!]]></script></div><div id="footer">
588 <p class="apache">Copyright 2018 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
589 <p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
590 if (typeof(prettyPrint) !== 'undefined') {