Subversion Repositories svn LFS-FR

Rev

Rev 8424 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
7156 jlepiller 1
# SOME DESCRIPTIVE TITLE
2
# Copyright (C) YEAR Free Software Foundation, Inc.
3
# This file is distributed under the same license as the PACKAGE package.
4
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
7313 jlepiller 5
#
7156 jlepiller 6
msgid ""
7
msgstr ""
8237 jlepiller 8
"Project-Id-Version: \n"
8434 jlepiller 9
"POT-Creation-Date: 2020-10-30 15:27+0000\n"
8366 jlepiller 10
"PO-Revision-Date: 2020-07-17 14:49+0000\n"
7156 jlepiller 11
"Last-Translator: roptat <roptat@lepiller.eu>\n"
8241 jlepiller 12
"Language-Team: \n"
7313 jlepiller 13
"Language: fr\n"
7156 jlepiller 14
"MIME-Version: 1.0\n"
15
"Content-Type: text/plain; charset=UTF-8\n"
16
"Content-Transfer-Encoding: 8bit\n"
17
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
8366 jlepiller 18
"X-Generator: Pootle 2.8\n"
19
"X-POOTLE-MTIME: 1594997367.471785\n"
7156 jlepiller 20
 
21
#. type: Content of: <sect1><sect1info>
22
#: blfs-en/introduction/important/building-notes.xml:12
8434 jlepiller 23
#| msgid ""
24
#| "<othername>$LastChangedBy: ken $</othername> <date>$Date: 2020-06-30 "
25
#| "17:45:38 +0000 (Tue, 30 Jun 2020) $</date>"
7156 jlepiller 26
msgid ""
8434 jlepiller 27
"<othername>$LastChangedBy: ken $</othername> <date>$Date: 2020-10-26 "
28
"21:44:17 +0000 (Mon, 26 Oct 2020) $</date>"
7156 jlepiller 29
msgstr ""
8434 jlepiller 30
"<othername>$LastChangedBy: ken $</othername> <date>$Date: 2020-10-26 "
31
"21:44:17 +0000 (Mon, 26 Oct 2020) $</date>"
7156 jlepiller 32
 
33
#. type: Content of: <sect1><title>
34
#: blfs-en/introduction/important/building-notes.xml:16
35
msgid "Notes on Building Software"
36
msgstr "Remarques sur la construction de logiciels"
37
 
38
#. type: Content of: <sect1><para>
39
#: blfs-en/introduction/important/building-notes.xml:18
40
msgid ""
41
"Those people who have built an LFS system may be aware of the general "
8241 jlepiller 42
"principles of downloading and unpacking software. Some of that information "
43
"is repeated here for those new to building their own software."
7156 jlepiller 44
msgstr ""
45
"Il se peut que les gens qui ont construit un système LFS connaissent les "
8241 jlepiller 46
"principes généraux du téléchargement et du déballage de logiciel. Certaines "
47
"de ces informations sont répétées ici pour les nouveaux qui construisent "
48
"leurs propres logiciels."
7156 jlepiller 49
 
50
#. type: Content of: <sect1><para>
51
#: blfs-en/introduction/important/building-notes.xml:23
52
msgid ""
53
"Each set of installation instructions contains a URL from which you can "
8241 jlepiller 54
"download the package.  The patches; however, are stored on the LFS servers "
55
"and are available via HTTP.  These are referenced as needed in the "
56
"installation instructions."
7156 jlepiller 57
msgstr ""
58
"Chaque groupe d'instructions d'installation contient une adresse Web depuis "
59
"laquelle vous pouvez télécharger le paquet. Les correctifs cependant, sont "
60
"enregistrés sur les serveurs LFS et sont disponibles via HTTP. Ils sont "
61
"référencés comme nécessaires dans les instructions d'installation."
62
 
63
#. type: Content of: <sect1><para>
64
#: blfs-en/introduction/important/building-notes.xml:28
65
msgid ""
8241 jlepiller 66
"While you can keep the source files anywhere you like, we assume that you "
67
"have unpacked the package and changed into the directory created by the "
68
"unpacking process (the 'build' directory).  We also assume you have "
69
"uncompressed any required patches and they are in the directory immediately "
70
"above the 'build' directory."
7156 jlepiller 71
msgstr ""
8241 jlepiller 72
"Si vous pouvez mettre les fichiers sources là où vous voulez, nous supposons"
73
" que vous avez déballé le paquet et êtes allé dans le répertoire créé par le"
74
" processus de déballage (le répertoire de 'construction'). Nous supposons "
75
"aussi que vous avez décompressé les correctifs requis et qu'ils sont dans le"
76
" répertoire de niveau immédiatement supérieur au répertoire de "
77
"'construction'."
7156 jlepiller 78
 
79
#. type: Content of: <sect1><para>
80
#: blfs-en/introduction/important/building-notes.xml:34
81
msgid ""
82
"We can not emphasize strongly enough that you should start from a "
8241 jlepiller 83
"<emphasis>clean source tree</emphasis> each time. This means that if you "
84
"have had an error during configuration or compilation, it's usually best to "
85
"delete the source tree and re-unpack it <emphasis>before</emphasis> trying "
86
"again. This obviously doesn't apply if you're an advanced user used to "
87
"hacking <filename>Makefile</filename>s and C code, but if in doubt, start "
88
"from a clean tree."
7156 jlepiller 89
msgstr ""
90
"Nous ne saurions que trop vous recommander de démarrer àpartir d'une "
8241 jlepiller 91
"<emphasis>arborescence de sources propre</emphasis> à chaque fois.  Cela "
92
"veut dire que si vous avez eu une erreur lors de la configuration ou de la "
7156 jlepiller 93
"compilation, il est généralement préférable d'effacer l'arborescence des "
8241 jlepiller 94
"sources et de la redéballer <emphasis>avant</emphasis> de réessayer. Cela ne"
95
" s'applique évidemment pas si vous êtes un utilisateur avancé habitué à "
96
"modifier les <filename>Makefile</filename>s et le code C, mais si vous avez "
97
"un doute, commencez à partir d'une arborescence propre."
7156 jlepiller 98
 
99
#. type: Content of: <sect1><sect2><title>
100
#: blfs-en/introduction/important/building-notes.xml:44
101
msgid "Building Software as an Unprivileged (non-root) User"
102
msgstr ""
103
"Construction de logiciels en tant qu'utilisateur non privilégié (non root)"
104
 
105
#. type: Content of: <sect1><sect2><para>
106
#: blfs-en/introduction/important/building-notes.xml:46
107
msgid ""
8241 jlepiller 108
"The golden rule of Unix System Administration is to use your superpowers "
109
"only when necessary. Hence, BLFS recommends that you build software as an "
110
"unprivileged user and only become the <systemitem "
111
"class='username'>root</systemitem> user when installing the software. This "
112
"philosophy is followed in all the packages in this book.  Unless otherwise "
113
"specified, all instructions should be executed as an unprivileged user. The "
114
"book will advise you on instructions that need <systemitem "
115
"class='username'>root</systemitem> privileges."
7156 jlepiller 116
msgstr ""
117
"La règle d'or de l'administration d'un système Unix est de n'utiliser vos "
8241 jlepiller 118
"super-pouvoirs que si nécessaire. D'où la recommandation de BLFS de "
119
"construire les logiciels en tant qu'utilisateur non privilégié et de ne "
120
"devenir l'utilisateur <systemitem class='username'>root</systemitem> que "
121
"lors de l'installation du logiciel. On suit cette philosophie dans tous les "
122
"paquets du livre. Sauf spécifications contraires, toutes les instructions "
123
"devraient être exécutées en tant qu'utilisateur non privilégié. Le livre "
124
"vous conseillera sur les instructions qui ont besoin des privilèges "
125
"<systemitem class='username'>root</systemitem>."
7156 jlepiller 126
 
127
#. type: Content of: <sect1><sect2><title>
128
#: blfs-en/introduction/important/building-notes.xml:58
129
msgid "Unpacking the Software"
130
msgstr "Déballer le logiciel"
131
 
132
#. type: Content of: <sect1><sect2><para>
133
#: blfs-en/introduction/important/building-notes.xml:60
134
msgid ""
135
"If a file is in <filename class='extension'>.tar</filename> format and "
136
"compressed, it is unpacked by running one of the following commands:"
137
msgstr ""
8241 jlepiller 138
"S'il y a un fichier compressé au format <filename "
139
"class='extension'>.tar</filename>, on le déballe en utilisant une des "
140
"commandes suivantes&nbsp;:"
7156 jlepiller 141
 
142
#. type: Content of: <sect1><sect2><screen>
143
#: blfs-en/introduction/important/building-notes.xml:64
144
#, no-wrap
145
msgid ""
146
"<userinput>tar -xvf filename.tar.gz\n"
147
"tar -xvf filename.tgz\n"
148
"tar -xvf filename.tar.Z\n"
149
"tar -xvf filename.tar.bz2</userinput>"
150
msgstr ""
151
"<userinput>tar -xvf filename.tar.gz\n"
152
"tar -xvf filename.tgz\n"
153
"tar -xvf filename.tar.Z\n"
154
"tar -xvf filename.tar.bz2</userinput>"
155
 
156
#. type: Content of: <sect1><sect2><note><para>
157
#: blfs-en/introduction/important/building-notes.xml:70
158
msgid ""
159
"You may omit using the <option>v</option> parameter in the commands shown "
8241 jlepiller 160
"above and below if you wish to suppress the verbose listing of all the files"
161
" in the archive as they are extracted. This can help speed up the extraction"
162
" as well as make any errors produced during the extraction more obvious to "
163
"you."
7156 jlepiller 164
msgstr ""
8241 jlepiller 165
"Vous pouvez ne pas utiliser le paramètre <option>v</option> dans les "
166
"commandes décrites ci-dessus et ci-dessous si vous souhaitez supprimer le "
167
"listage verbeux de tous les fichiers de l'archive au fur et à mesure qu'ils "
168
"sont extraits. Cela peut aider à accélérer l'extraction mais aussi rendre la"
169
" compréhension des erreurs produites pendant l'extraction moins évidentes."
7156 jlepiller 170
 
171
#. type: Content of: <sect1><sect2><para>
172
#: blfs-en/introduction/important/building-notes.xml:77
173
msgid "You can also use a slightly different method:"
174
msgstr "Vous pouvez utiliser aussi une méthode légèrement différente&nbsp;:"
175
 
176
#. type: Content of: <sect1><sect2><screen>
177
#: blfs-en/introduction/important/building-notes.xml:79
178
#, no-wrap
179
msgid "<userinput>bzcat filename.tar.bz2 | tar -xv</userinput>"
180
msgstr "<userinput>bzcat filename.tar.bz2 | tar -xv</userinput>"
181
 
182
#. type: Content of: <sect1><sect2><para>
183
#: blfs-en/introduction/important/building-notes.xml:81
184
msgid ""
8241 jlepiller 185
"Finally, you sometimes need to be able to unpack patches which are generally"
186
" not in <filename class='extension'>.tar</filename> format. The best way to "
187
"do this is to copy the patch file to the parent of the 'build' directory and"
188
" then run one of the following commands depending on whether the file is a "
189
"<filename class='extension'>.gz</filename> or <filename "
190
"class='extension'>.bz2</filename> file:"
7156 jlepiller 191
msgstr ""
192
"Enfin, vous avez parfois besoin de déballer des correctifs qui ne sont "
193
"généralement pas au format <filename class='extension'>.tar</filename>.  La "
194
"meilleure manière de faire cela est de copier le chemin du fichier dans le "
195
"parent du répertoire de 'construction' puis d'exécuter une des commandes "
8241 jlepiller 196
"suivantes selon que le fichier est un <filename "
197
"class='extension'>.gz</filename> ou un <filename "
198
"class='extension'>.bz2</filename>&nbsp;:"
7156 jlepiller 199
 
200
#. type: Content of: <sect1><sect2><screen>
201
#: blfs-en/introduction/important/building-notes.xml:88
202
#, no-wrap
203
msgid ""
204
"<userinput>gunzip -v patchname.gz\n"
205
"bunzip2 -v patchname.bz2</userinput>"
206
msgstr ""
207
"<userinput>gunzip -v patchname.gz\n"
208
"bunzip2 -v patchname.bz2</userinput>"
209
 
210
#. type: Content of: <sect1><sect2><title>
211
#: blfs-en/introduction/important/building-notes.xml:94
212
msgid "Verifying File Integrity Using 'md5sum'"
213
msgstr "Vérifier l'intégrité des fichiers en utilisant 'md5sum'"
214
 
215
#. type: Content of: <sect1><sect2><para>
216
#: blfs-en/introduction/important/building-notes.xml:96
217
msgid ""
218
"Generally, to verify that the downloaded file is genuine and complete, many "
8241 jlepiller 219
"package maintainers also distribute md5sums of the files. To verify the "
220
"md5sum of the downloaded files, download both the file and the corresponding"
221
" md5sum file to the same directory (preferably from different on-line "
222
"locations), and (assuming <filename>file.md5sum</filename> is the md5sum "
223
"file downloaded) run the following command:"
7156 jlepiller 224
msgstr ""
225
"En général, pour vérifier que le fichier téléchargé est authentique et "
8241 jlepiller 226
"complet, de nombreux mainteneurs de paquets distribuent aussi des sommes md5"
227
" des fichiers. Pour vérifier la somme md5 des fichiers téléchargés, "
228
"téléchargez à la fois le fichier et le fichier md5sum correspondant dans le "
229
"même répertoire (de préférence à partir d'emplacements différents en ligne)"
230
"  et (en supposant que <filename>file.md5sum</filename> est le fichier "
231
"md5sum téléchargé), lancez la commande suivante&nbsp;:"
7156 jlepiller 232
 
233
#. type: Content of: <sect1><sect2><screen>
234
#: blfs-en/introduction/important/building-notes.xml:103
235
#, no-wrap
236
msgid "<userinput>md5sum -c file.md5sum</userinput>"
237
msgstr "<userinput>md5sum -c file.md5sum</userinput>"
238
 
239
#. type: Content of: <sect1><sect2><para>
240
#: blfs-en/introduction/important/building-notes.xml:105
241
msgid ""
242
"If there are any errors, they will be reported. Note that the BLFS book "
243
"includes md5sums for all the source files also. To use the BLFS supplied "
8241 jlepiller 244
"md5sums, you can create a <filename>file.md5sum</filename> (place the md5sum"
245
" data and the exact name of the downloaded file on the same line of a file, "
7156 jlepiller 246
"separated by white space) and run the command shown above.  Alternately, "
8241 jlepiller 247
"simply run the command shown below and compare the output to the md5sum data"
248
" shown in the BLFS book."
7156 jlepiller 249
msgstr ""
8241 jlepiller 250
"S'il y a une erreur, elle sera signalée. Remarquez que le livre BLFS "
251
"comprend les sommes md5 de tous les fichiers sources. Pour utiliser les "
252
"sommes md5 fournies par BLFS, vous pouvez créer un "
253
"<filename>file.md5sum</filename> (mettez les données md5sum et le nom exact "
254
"du fichier téléchargé sur la même ligne d'un fichier, séparés par un espace "
255
"blanc), et lancez la commande montrée ci-dessus. Sinon, lancez simplement la"
256
" commande décrite ci-dessus et comparez la sortie avec les données de somme "
257
"md5 inscrites dans le livre BLFS."
7156 jlepiller 258
 
259
#. type: Content of: <sect1><sect2><screen>
260
#: blfs-en/introduction/important/building-notes.xml:113
261
#, no-wrap
8241 jlepiller 262
msgid ""
263
"<userinput>md5sum "
264
"<replaceable>&lt;name_of_downloaded_file&gt;</replaceable></userinput>"
265
msgstr ""
266
"<userinput>md5sum "
267
"<replaceable>&lt;name_of_downloaded_file&gt;</replaceable></userinput>"
7156 jlepiller 268
 
269
#. type: Content of: <sect1><sect2><title>
270
#: blfs-en/introduction/important/building-notes.xml:118
271
msgid "Creating Log Files During Installation"
272
msgstr "Créer des fichiers journaux pendant l'installation"
273
 
274
#. type: Content of: <sect1><sect2><para>
275
#: blfs-en/introduction/important/building-notes.xml:120
276
msgid ""
8241 jlepiller 277
"For larger packages, it is convenient to create log files instead of staring"
278
" at the screen hoping to catch a particular error or warning. Log files are "
7156 jlepiller 279
"also useful for debugging and keeping records. The following command allows "
8241 jlepiller 280
"you to create an installation log. Replace "
281
"<replaceable>&lt;command&gt;</replaceable> with the command you intend to "
282
"execute."
7156 jlepiller 283
msgstr ""
284
"Pour les gros paquets, il est commode de créer des fichiers journaux plutôt "
8241 jlepiller 285
"que de dévisager l'écran en espérant récupérer une erreur ou un "
286
"avertissement particulier. Les fichiers journaux sont aussi utiles pour "
287
"déboguer et garder des enregistrements. La commande suivante vous permet de "
288
"créer un journal d'installation. Remplacez "
289
"<replaceable>&lt;commande&gt;</replaceable> par la commande que vous "
290
"cherchez à exécuter."
7156 jlepiller 291
 
292
#. type: Content of: <sect1><sect2><screen>
293
#: blfs-en/introduction/important/building-notes.xml:126
294
#, no-wrap
8241 jlepiller 295
msgid ""
296
"<userinput>( <replaceable>&lt;command&gt;</replaceable> 2&gt;&amp;1 | tee "
297
"compile.log &amp;&amp; exit $PIPESTATUS )</userinput>"
298
msgstr ""
299
"<userinput>( <replaceable>&lt;command&gt;</replaceable> 2&gt;&amp;1 | tee "
300
"compile.log &amp;&amp; exit $PIPESTATUS )</userinput>"
7156 jlepiller 301
 
302
#. type: Content of: <sect1><sect2><para>
303
#: blfs-en/introduction/important/building-notes.xml:128
304
msgid ""
8241 jlepiller 305
"<option>2&gt;&amp;1</option> redirects error messages to the same location "
306
"as standard output. The <command>tee</command> command allows viewing of the"
307
" output while logging the results to a file. The parentheses around the "
308
"command run the entire command in a subshell and finally the <command>exit "
309
"$PIPESTATUS</command> command ensures the result of the "
310
"<replaceable>&lt;command&gt;</replaceable> is returned as the result and not"
311
" the result of the <command>tee</command> command."
7156 jlepiller 312
msgstr ""
313
"<option>2&gt;&amp;1</option> redirige les messages d'erreur vers le même "
8241 jlepiller 314
"endroit que la sortie standard. La commande <command>tee</command> vous "
315
"permet de voir la sortie en journalisant les résultats dans un fichier. Les "
7156 jlepiller 316
"parenthèses autour de la commande exécutent toute la commande dans un sous-"
8241 jlepiller 317
"shell et, enfin, la commande <command>exit $PIPESTATUS</command> s'assure "
318
"que c'est bien le résultat de <replaceable>&lt;commande&gt;</replaceable> "
319
"qui est retourné et pas le résultat de la commande <command>tee</command>."
7156 jlepiller 320
 
321
#. type: Content of: <sect1><sect2><title>
322
#: blfs-en/introduction/important/building-notes.xml:139
323
msgid "Using Multiple Processors"
324
msgstr "Utilisation de processeurs multiples"
325
 
326
#. type: Content of: <sect1><sect2><para>
327
#: blfs-en/introduction/important/building-notes.xml:141
328
msgid ""
329
"For many modern systems with multiple processors (or cores) the compilation "
8241 jlepiller 330
"time for a package can be reduced by performing a \"parallel make\" by "
331
"either setting an environment variable or telling the make program how many "
7156 jlepiller 332
"processors are available. For instance, a Core2Duo can support two "
333
"simultaneous processes with:"
334
msgstr ""
7216 jlepiller 335
"Pour la plupart des systèmes modernes avec des processeurs multiples (ou "
8241 jlepiller 336
"cœurs) le temps de compilation pour un paquet peut être réduit en effectuant"
337
" une «&nbsp;construction parallèle&nbsp;» soit en initialisant une variable "
338
"d'environnement, soit en disant au programme make combien de processeurs "
339
"sont disponibles. Par exemple, un Core2Duo peut supporter deux processus "
340
"simultanés avec&nbsp;:"
7156 jlepiller 341
 
342
#. type: Content of: <sect1><sect2><screen>
343
#: blfs-en/introduction/important/building-notes.xml:147
344
#, no-wrap
345
msgid "<userinput>export MAKEFLAGS='-j2'</userinput>"
346
msgstr "<userinput>export MAKEFLAGS='-j2'</userinput>"
347
 
348
#. type: Content of: <sect1><sect2><para>
349
#: blfs-en/introduction/important/building-notes.xml:149
350
msgid "or just building with:"
351
msgstr "ou en compilant simplement avec&nbsp;:"
352
 
353
#. type: Content of: <sect1><sect2><screen>
354
#: blfs-en/introduction/important/building-notes.xml:151
355
#, no-wrap
356
msgid "<userinput>make -j2</userinput>"
357
msgstr "<userinput>make -j2</userinput>"
358
 
359
#. type: Content of: <sect1><sect2><para>
360
#: blfs-en/introduction/important/building-notes.xml:153
361
msgid ""
362
"Generally the number of processes should not exceed the number of cores "
363
"supported by the CPU.  To list the processors on your system, issue: "
364
"<userinput>grep processor /proc/cpuinfo</userinput>."
365
msgstr ""
366
"Généralement le nombre de processus ne doit pas dépasser le nombre de cœurs "
367
"supportés par le CPU. Pour lister les processeurs de votre système, tapez : "
368
"<userinput>grep processor /proc/cpuinfo</userinput>."
369
 
370
#. type: Content of: <sect1><sect2><para>
371
#: blfs-en/introduction/important/building-notes.xml:158
372
msgid ""
373
"In some cases, using multiple processors may result in a 'race' condition "
8241 jlepiller 374
"where the success of the build depends on the order of the commands run by "
375
"the <command>make</command> program.  For instance, if an executable needs "
376
"File A and File B, attempting to link the program before one of the "
377
"dependent components is available will result in a failure.  This condition "
378
"usually arises because the upstream developer has not properly designated "
379
"all the prerequisites needed to accomplish a step in the Makefile."
7156 jlepiller 380
msgstr ""
8241 jlepiller 381
"Dans certains cas, l'utilisation de processeurs multiples peut amener dans "
382
"une sorte de «&nbsp;course&nbsp;» où le succès de la construction dépend de "
7156 jlepiller 383
"l'ordre des commandes lancées par le programme <command>make</command>. Par "
7621 jlepiller 384
"exemple, si un exécutable demande un fichier A et un fichier B, essayer de "
385
"lier le programme avant qu'un des composants dépendants ne soit disponible "
8241 jlepiller 386
"aboutira à un échec.  Cela arrive en général quand les développeurs n'ont "
387
"pas correctement désigné tous les prérequis utiles pour accomplir une étape "
388
"du Makefile."
7156 jlepiller 389
 
390
#. type: Content of: <sect1><sect2><para>
391
#: blfs-en/introduction/important/building-notes.xml:167
392
msgid ""
8241 jlepiller 393
"If this occurs, the best way to proceed is to drop back to a single "
394
"processor build.  Adding '-j1' to a make command will override the similar "
395
"setting in the MAKEFLAGS environment variable."
7156 jlepiller 396
msgstr ""
8241 jlepiller 397
"Si cela arrive, la meilleure chose à faire est de recommencer la "
398
"construction avec un seul processeur. En ajoutant «&nbsp;-j1&nbsp;» à une "
399
"commande make, cela écrasera l'initialisation similaire dans une variable "
400
"d'environnement MAKEFLAGS."
7156 jlepiller 401
 
7340 jlepiller 402
#. type: Content of: <sect1><sect2><note><para>
403
#: blfs-en/introduction/important/building-notes.xml:171
404
msgid ""
405
"When running the package tests or the install portion of the package build "
406
"process, we do not recommend using an option greater than '-j1' unless "
407
"specified otherwise.  The installation procedures or checks have not been "
408
"validated using parallel procedures and may fail with issues that are "
409
"difficult to debug."
410
msgstr ""
8241 jlepiller 411
"Lorsque vous lancez les tests du paquet ou l'installation du paquet, nous ne"
412
" recommandons pas d'utiliser une option plus grande que «&nbsp;-j1&nbsp;» à "
413
"moins que cela ne soit indiqué. La procédure d'installation et les tests "
414
"n'ont pas été validés avec des processus en parallèle et peuvent échouer "
415
"avec des problème difficiles à déboguer."
7340 jlepiller 416
 
7156 jlepiller 417
#. type: Content of: <sect1><sect2><title>
7340 jlepiller 418
#: blfs-en/introduction/important/building-notes.xml:180
7156 jlepiller 419
msgid "Automated Building Procedures"
420
msgstr "Procédures de construction automatique"
421
 
422
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 423
#: blfs-en/introduction/important/building-notes.xml:182
7156 jlepiller 424
msgid ""
8241 jlepiller 425
"There are times when automating the building of a package can come in handy."
426
" Everyone has their own reasons for wanting to automate building, and "
427
"everyone goes about it in their own way. Creating "
428
"<filename>Makefile</filename>s, <application>Bash</application> scripts, "
429
"<application>Perl</application> scripts or simply a list of commands used to"
430
" cut and paste are just some of the methods you can use to automate building"
431
" BLFS packages. Detailing how and providing examples of the many ways you "
432
"can automate the building of packages is beyond the scope of this section. "
433
"This section will expose you to using file redirection and the "
434
"<command>yes</command> command to help provide ideas on how to automate your"
435
" builds."
7156 jlepiller 436
msgstr ""
437
"Il y a des fois où automatiser la construction d'un paquet peut s'avérer "
8241 jlepiller 438
"utile. Chacun a ses raisons de vouloir automatiser la construction, et "
439
"chacun le fait par ses propres moyens. Soit en créant des "
440
"<filename>Makefile</filename>s, des scripts <application>Bash</application>,"
441
" des scripts <application>Perl</application> ou simplement une liste de "
442
"commandes utilisées à copier-coller, sont des méthodes que vous pouvez "
443
"utiliser pour automatiser la construction de paquets BLFS. Détailler et "
444
"donner des exemples sur les nombreuses manières d'automatiser la "
445
"construction de paquets va au-delà des objectifs de cette section. Cette "
446
"section vous présentera l'utilisation de la redirection de fichiers et de la"
447
" commande <command>yes</command> pour vous donner des idées sur la façon "
448
"d'automatiser vos constructions."
7156 jlepiller 449
 
450
#. type: Content of: <sect1><sect2><bridgehead>
7340 jlepiller 451
#: blfs-en/introduction/important/building-notes.xml:194
7156 jlepiller 452
msgid "File Redirection to Automate Input"
453
msgstr "Redirection de fichier pour automatiser l'entrée"
454
 
455
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 456
#: blfs-en/introduction/important/building-notes.xml:196
7156 jlepiller 457
msgid ""
8241 jlepiller 458
"You will find times throughout your BLFS journey when you will come across a"
459
" package that has a command prompting you for information. This information "
460
"might be configuration details, a directory path, or a response to a license"
461
" agreement. This can present a challenge to automate the building of that "
7156 jlepiller 462
"package. Occasionally, you will be prompted for different information in a "
463
"series of questions. One method to automate this type of scenario requires "
464
"putting the desired responses in a file and using redirection so that the "
465
"program uses the data in the file as the answers to the questions."
466
msgstr ""
467
"Il y aura des moments, pendant votre aventure BLFS, où vous tomberez sur un "
468
"paquet ayant une invite de commande vous demandant des informations.  Ces "
469
"informations peuvent être des détails de configuration, un chemin de "
470
"répertoire ou une réponse à un accord de licence. Il peut être un challenge "
471
"d'automatiser la construction de ce paquet. On vous demandera "
472
"occasionnellement des informations via une série de questions. Une méthode "
8241 jlepiller 473
"pour automatiser ce type de scénario est de mettre les réponses désirées "
474
"dans un fichier et d'utiliser la redirection pour que le programme utilise "
475
"les données du fichier comme réponses aux questions."
7156 jlepiller 476
 
477
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 478
#: blfs-en/introduction/important/building-notes.xml:206
7156 jlepiller 479
msgid ""
8241 jlepiller 480
"Building the <application>CUPS</application> package is a good example of "
481
"how redirecting a file as input to prompts can help you automate the build. "
482
"If you run the test suite, you are asked to respond to a series of questions"
483
" regarding the type of test to run and if you have any auxiliary programs "
484
"the test can use. You can create a file with your responses, one response "
485
"per line, and use a command similar to the one shown below to automate "
486
"running the test suite:"
7156 jlepiller 487
msgstr ""
8241 jlepiller 488
"La construction du paquet <application>CUPS</application> est un bon exemple"
489
" de la façon de rediriger un fichier comme entrée aux invites, cela peut "
490
"vous aider à automatiser la construction. Si vous lancez la suite de test, "
491
"on vous demande de répondre à une série de questions concernant le type de "
492
"test à exécuter et si vous avez un programme auxiliaire que le test peut "
493
"utiliser. Vous pouvez créer un fichier avec vos réponses, une par ligne, et "
494
"utiliser une commande ressemblant à celle indiquée ci-dessous pour "
495
"automatiser l'exécution de la suite de tests&nbsp;:"
7156 jlepiller 496
 
497
#. type: Content of: <sect1><sect2><screen>
7340 jlepiller 498
#: blfs-en/introduction/important/building-notes.xml:214
7156 jlepiller 499
#, no-wrap
500
msgid "<userinput>make check &lt; ../cups-1.1.23-testsuite_parms</userinput>"
501
msgstr "<userinput>make check &lt; ../cups-1.1.23-testsuite_parms</userinput>"
502
 
503
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 504
#: blfs-en/introduction/important/building-notes.xml:216
7156 jlepiller 505
msgid ""
506
"This effectively makes the test suite use the responses in the file as the "
8241 jlepiller 507
"input to the questions. Occasionally you may end up doing a bit of trial and"
508
" error determining the exact format of your input file for some things, but "
7156 jlepiller 509
"once figured out and documented you can use this to automate building the "
510
"package."
511
msgstr ""
8241 jlepiller 512
"Cela fait que la suite de tests utilise les réponses du fichier comme entrée"
513
" pour les questions. Vous pouvez finir par faire des essais et des erreurs "
514
"pour déterminer le format exact de votre fichier d'entrée pour certaines "
515
"choses, mais une fois expérimenté et documenté, vous pouvez utiliser cela "
516
"pour automatiser la construction du paquet."
7156 jlepiller 517
 
518
#. type: Content of: <sect1><sect2><bridgehead>
7340 jlepiller 519
#: blfs-en/introduction/important/building-notes.xml:222
7156 jlepiller 520
msgid "Using <command>yes</command> to Automate Input"
521
msgstr "Utiliser <command>yes</command> pour automatiser l'entrée"
522
 
523
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 524
#: blfs-en/introduction/important/building-notes.xml:225
7156 jlepiller 525
msgid ""
526
"Sometimes you will only need to provide one response, or provide the same "
527
"response to many prompts. For these instances, the <command>yes</command> "
8241 jlepiller 528
"command works really well. The <command>yes</command> command can be used to"
529
" provide a response (the same one) to one or more instances of questions. It"
530
" can be used to simulate pressing just the <keycap>Enter</keycap> key, "
531
"entering the <keycap>Y</keycap> key or entering a string of text. Perhaps "
532
"the easiest way to show its use is in an example."
7156 jlepiller 533
msgstr ""
8241 jlepiller 534
"Vous n'aurez parfois besoin que de fournir une réponse ou une même réponse à"
535
" de nombreuses invites. Dans ces cas-là, la commande <command>yes</command> "
536
"fonctionne vraiment bien.  On peut utiliser la commande "
537
"<command>yes</command> pour fournir une réponse (la même) à une ou plusieurs"
538
" questions. On peut l'utiliser pour simuler un simple appui sur la touche "
539
"<keycap>Entrée</keycap>, l'entrée de la touche <keycap>Y</keycap> ou "
540
"l'entrée d'une chaîne de texte. La manière la plus facile de montrer son "
541
"utilisation est peut-être de prendre un exemple."
7156 jlepiller 542
 
543
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 544
#: blfs-en/introduction/important/building-notes.xml:234
7156 jlepiller 545
msgid ""
8241 jlepiller 546
"First, create a short <application>Bash</application> script by entering the"
547
" following commands:"
7156 jlepiller 548
msgstr ""
8241 jlepiller 549
"Créez tout d'abord un petit script <application>Bash</application> en "
550
"entrant les commandes suivantes&nbsp;:"
7156 jlepiller 551
 
552
#. type: Content of: <sect1><sect2><screen>
7340 jlepiller 553
#: blfs-en/introduction/important/building-notes.xml:237
7156 jlepiller 554
#, no-wrap
555
msgid ""
556
"<userinput>cat &gt; blfs-yes-test1 &lt;&lt; \"EOF\"\n"
557
"<literal>#!/bin/bash\n"
558
"\n"
559
"echo -n -e \"\\n\\nPlease type something (or nothing) and press Enter ---> \"\n"
560
"\n"
561
"read A_STRING\n"
562
"\n"
563
"if test \"$A_STRING\" = \"\"; then A_STRING=\"Just the Enter key was pressed\"\n"
564
"else A_STRING=\"You entered '$A_STRING'\"\n"
565
"fi\n"
566
"\n"
567
"echo -e \"\\n\\n$A_STRING\\n\\n\"</literal>\n"
568
"EOF\n"
569
"chmod 755 blfs-yes-test1</userinput>"
570
msgstr ""
571
"<userinput>cat &gt; blfs-yes-test1 &lt;&lt; \"EOF\"\n"
572
"<literal>#!/bin/bash\n"
573
"\n"
574
"echo -n -e \"\\n\\nPlease type something (or nothing) and press Enter ---> \"\n"
575
"\n"
576
"read A_STRING\n"
577
"\n"
578
"if test \"$A_STRING\" = \"\"; then A_STRING=\"Just the Enter key was pressed\"\n"
579
"else A_STRING=\"You entered '$A_STRING'\"\n"
580
"fi\n"
581
"\n"
582
"echo -e \"\\n\\n$A_STRING\\n\\n\"</literal>\n"
583
"EOF\n"
584
"chmod 755 blfs-yes-test1</userinput>"
585
 
586
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 587
#: blfs-en/introduction/important/building-notes.xml:252
7156 jlepiller 588
msgid ""
589
"Now run the script by issuing <command>./blfs-yes-test1</command> from the "
8241 jlepiller 590
"command line. It will wait for a response, which can be anything (or "
591
"nothing) followed by the <keycap>Enter</keycap> key. After entering "
592
"something, the result will be echoed to the screen. Now use the "
593
"<command>yes</command> command to automate the entering of a response:"
7156 jlepiller 594
msgstr ""
595
"Maintenant, lancez le script en lançant <command>./blfs-yes-test1</command> "
8241 jlepiller 596
"depuis la ligne de commande. Il attendra une réponse, qui peut être "
597
"n'importe quoi (ou rien) suivi de la touche <keycap>Entrée</keycap>. Après "
598
"avoir entré quelque chose, le résultat sera affiché à l'écran. Utilisez "
599
"maintenant la commande <command>yes</command> pour automatiser l'entrée "
600
"d'une réponse&nbsp;:"
7156 jlepiller 601
 
602
#. type: Content of: <sect1><sect2><screen>
7340 jlepiller 603
#: blfs-en/introduction/important/building-notes.xml:259
7156 jlepiller 604
#, no-wrap
605
msgid "<userinput>yes | ./blfs-yes-test1</userinput>"
606
msgstr "<userinput>yes | ./blfs-yes-test1</userinput>"
607
 
608
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 609
#: blfs-en/introduction/important/building-notes.xml:261
7156 jlepiller 610
msgid ""
8241 jlepiller 611
"Notice that piping <command>yes</command> by itself to the script results in"
612
" <keycap>y</keycap> being passed to the script. Now try it with a string of "
7156 jlepiller 613
"text:"
614
msgstr ""
8241 jlepiller 615
"Remarquez que la redirection (le piping) de <command>yes</command> en lui-"
616
"même vers le script aboutit à ce que <keycap>y</keycap> est passé au script."
617
" Essayez-la maintenant avec une chaîne de texte&nbsp;:"
7156 jlepiller 618
 
619
#. type: Content of: <sect1><sect2><screen>
7340 jlepiller 620
#: blfs-en/introduction/important/building-notes.xml:265
7156 jlepiller 621
#, no-wrap
622
msgid "<userinput>yes 'This is some text' | ./blfs-yes-test1</userinput>"
623
msgstr "<userinput>yes 'This is some text' | ./blfs-yes-test1</userinput>"
624
 
625
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 626
#: blfs-en/introduction/important/building-notes.xml:267
7156 jlepiller 627
msgid ""
8241 jlepiller 628
"The exact string was used as the response to the script. Finally, try it "
629
"using an empty (null) string:"
7156 jlepiller 630
msgstr ""
8241 jlepiller 631
"La chaîne exacte était utilisée comme réponse au script. Enfin, essayez-la "
632
"en utilisant une chaîne vide (null)&nbsp;:"
7156 jlepiller 633
 
634
#. type: Content of: <sect1><sect2><screen>
7340 jlepiller 635
#: blfs-en/introduction/important/building-notes.xml:270
7156 jlepiller 636
#, no-wrap
637
msgid "<userinput>yes '' | ./blfs-yes-test1</userinput>"
638
msgstr "<userinput>yes '' | ./blfs-yes-test1</userinput>"
639
 
640
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 641
#: blfs-en/introduction/important/building-notes.xml:272
7156 jlepiller 642
msgid ""
643
"Notice this results in passing just the press of the <keycap>Enter</keycap> "
644
"key to the script. This is useful for times when the default answer to the "
645
"prompt is sufficient. This syntax is used in the <xref linkend=\"net-tools-"
646
"automate-example\"/> instructions to accept all the defaults to the many "
8241 jlepiller 647
"prompts during the configuration step. You may now remove the test script, "
648
"if desired."
7156 jlepiller 649
msgstr ""
650
"Remarquez que cela aboutit à ne passer au script que l'appui sur la touche "
651
"<keycap>Entrée</keycap>. C'est utile parfois quand la réponse par défaut à "
8241 jlepiller 652
"l'invite est suffisante. Cette syntaxe est utilisée dans les instructions de"
653
" <xref linkend=\"net-tools-automate-example\"/> pour accepter tous les "
654
"réglages par défaut à toutes les invites lors de l'étape de configuration.  "
655
"Vous pouvez maintenant supprimer le script de test si vous le désirez."
7156 jlepiller 656
 
657
#. type: Content of: <sect1><sect2><bridgehead>
7340 jlepiller 658
#: blfs-en/introduction/important/building-notes.xml:279
7156 jlepiller 659
msgid "File Redirection to Automate Output"
660
msgstr "Redirection de fichiers pour automatiser la sortie"
661
 
662
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 663
#: blfs-en/introduction/important/building-notes.xml:281
7156 jlepiller 664
msgid ""
665
"In order to automate the building of some packages, especially those that "
8241 jlepiller 666
"require you to read a license agreement one page at a time, requires using a"
667
" method that avoids having to press a key to display each page.  Redirecting"
668
" the output to a file can be used in these instances to assist with the "
669
"automation. The previous section on this page touched on creating log files "
670
"of the build output. The redirection method shown there used the "
671
"<command>tee</command> command to redirect output to a file while also "
672
"displaying the output to the screen. Here, the output will only be sent to a"
673
" file."
7156 jlepiller 674
msgstr ""
675
"Pour automatiser la construction de certains paquets, surtout ceux qui vous "
8241 jlepiller 676
"demandent de lire un accord de licence page après page, il faut utiliser une"
677
" méthode qui évite de devoir appuyer sur une touche pour afficher chaque "
678
"page. On peut utiliser la redirection de sortie vers un fichier dans ce cas-"
679
"là pour vous aider à automatiser. La section précédente de cette page a visé"
680
" à créer des fichiers journaux de la sortie de la construction.  La méthode "
681
"de redirection qui y est décrite utilisait la commande "
682
"<command>tee</command> pour rediriger la sortie tout en affichant aussi la "
683
"sortie à l'écran. Ici on ne verra la sortie que dans un fichier."
7156 jlepiller 684
 
685
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 686
#: blfs-en/introduction/important/building-notes.xml:291
7156 jlepiller 687
msgid ""
688
"Again, the easiest way to demonstrate the technique is to show an example. "
689
"First, issue the command:"
690
msgstr ""
8241 jlepiller 691
"De nouveau, la manière la plus facile de montrer la technique est de "
692
"présenter un exemple. Lancez d'abord la commande&nbsp;:"
7156 jlepiller 693
 
694
#. type: Content of: <sect1><sect2><screen>
7340 jlepiller 695
#: blfs-en/introduction/important/building-notes.xml:294
7156 jlepiller 696
#, no-wrap
697
msgid "<userinput>ls -l /usr/bin | more</userinput>"
698
msgstr "<userinput>ls -l /usr/bin | more</userinput>"
699
 
700
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 701
#: blfs-en/introduction/important/building-notes.xml:296
7156 jlepiller 702
msgid ""
703
"Of course, you'll be required to view the output one page at a time because "
704
"the <command>more</command> filter was used. Now try the same command, but "
8241 jlepiller 705
"this time redirect the output to a file. The special file "
706
"<filename>/dev/null</filename> can be used instead of the filename shown, "
707
"but you will have no log file to examine:"
7156 jlepiller 708
msgstr ""
709
"Bien entendu, vous devrez voir la sortie page par page car on a utilisé le "
8241 jlepiller 710
"filtre <command>more</command>. Essayez maintenant la même commande, mais en"
711
" redirigeant cette fois la sortie vers un fichier. Le fichier spécial "
7156 jlepiller 712
"<filename>/dev/null</filename> peut être utilisé à la place du fichier "
713
"indiqué, mais vous n'aurez pas de fichier journal à examiner&nbsp;:"
714
 
715
#. type: Content of: <sect1><sect2><screen>
7340 jlepiller 716
#: blfs-en/introduction/important/building-notes.xml:302
7156 jlepiller 717
#, no-wrap
8241 jlepiller 718
msgid ""
719
"<userinput>ls -l /usr/bin | more &gt; redirect_test.log "
720
"2&gt;&amp;1</userinput>"
721
msgstr ""
722
"<userinput>ls -l /usr/bin | more &gt; redirect_test.log "
723
"2&gt;&amp;1</userinput>"
7156 jlepiller 724
 
725
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 726
#: blfs-en/introduction/important/building-notes.xml:304
7156 jlepiller 727
msgid ""
728
"Notice that this time the command immediately returned to the shell prompt "
729
"without having to page through the output. You may now remove the log file."
730
msgstr ""
8241 jlepiller 731
"Remarquez que cette fois, la commande est immédiatement revenue à l'invite "
732
"du shell sans devoir parcourir la sortie page par page. Vous pouvez "
733
"supprimer maintenant le fichier journal."
7156 jlepiller 734
 
735
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 736
#: blfs-en/introduction/important/building-notes.xml:308
7156 jlepiller 737
msgid ""
738
"The last example will use the <command>yes</command> command in combination "
8241 jlepiller 739
"with output redirection to bypass having to page through the output and then"
740
" provide a <keycap>y</keycap> to a prompt. This technique could be used in "
741
"instances when otherwise you would have to page through the output of a file"
742
" (such as a license agreement) and then answer the question of <quote>do you"
743
" accept the above?</quote>. For this example, another short "
744
"<application>Bash</application> script is required:"
7156 jlepiller 745
msgstr ""
8241 jlepiller 746
"Le dernier exemple utilisera la commande <command>yes</command> associée à "
747
"la redirection de sortie pour éviter de naviguer page par page dans la "
748
"sortie, puis de fournir un <keycap>y</keycap> à l'invite. Cette technique "
749
"peut être utilisée dans les cas où vous devriez, sans elle, naviguer page "
750
"par page dans la sortie d'un fichier (tel qu'un accord de licence), puis "
751
"répondre à la question <quote>Acceptez-vous ce qui précède&nbsp;?</quote>.  "
752
"Pour cet exemple, on a besoin d'un autre petit script "
753
"<application>Bash</application>&nbsp;:"
7156 jlepiller 754
 
755
#. type: Content of: <sect1><sect2><screen>
7340 jlepiller 756
#: blfs-en/introduction/important/building-notes.xml:316
7156 jlepiller 757
#, no-wrap
758
msgid ""
759
"<userinput>cat &gt; blfs-yes-test2 &lt;&lt; \"EOF\"\n"
760
"<literal>#!/bin/bash\n"
761
"\n"
762
"ls -l /usr/bin | more\n"
763
"\n"
764
"echo -n -e \"\\n\\nDid you enjoy reading this? (y,n) \"\n"
765
"\n"
766
"read A_STRING\n"
767
"\n"
768
"if test \"$A_STRING\" = \"y\"; then A_STRING=\"You entered the 'y' key\"\n"
769
"else A_STRING=\"You did NOT enter the 'y' key\"\n"
770
"fi\n"
771
"\n"
772
"echo -e \"\\n\\n$A_STRING\\n\\n\"</literal>\n"
773
"EOF\n"
774
"chmod 755 blfs-yes-test2</userinput>"
775
msgstr ""
776
"<userinput>cat &gt; blfs-yes-test2 &lt;&lt; \"EOF\"\n"
777
"<literal>#!/bin/bash\n"
778
"\n"
779
"ls -l /usr/bin | more\n"
780
"\n"
781
"echo -n -e \"\\n\\nDid you enjoy reading this? (y,n) \"\n"
782
"\n"
783
"read A_STRING\n"
784
"\n"
785
"if test \"$A_STRING\" = \"y\"; then A_STRING=\"You entered the 'y' key\"\n"
786
"else A_STRING=\"You did NOT enter the 'y' key\"\n"
787
"fi\n"
788
"\n"
789
"echo -e \"\\n\\n$A_STRING\\n\\n\"</literal>\n"
790
"EOF\n"
791
"chmod 755 blfs-yes-test2</userinput>"
792
 
793
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 794
#: blfs-en/introduction/important/building-notes.xml:333
7156 jlepiller 795
msgid ""
796
"This script can be used to simulate a program that requires you to read a "
8241 jlepiller 797
"license agreement, then respond appropriately to accept the agreement before"
798
" the program will install anything. First, run the script without any "
7156 jlepiller 799
"automation techniques by issuing <command>./blfs-yes-test2</command>."
800
msgstr ""
801
"On peut utiliser ce script pour simuler un programme qui demande que vous "
802
"lisiez un accord de licence et que vous acceptiez le contrat avant que le "
8241 jlepiller 803
"programme n'installe quoique ce soit. Lancez d'abord le script sans "
804
"techniques d'automatisation en exécutant <command>./blfs-yes-"
805
"test2</command>."
7156 jlepiller 806
 
807
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 808
#: blfs-en/introduction/important/building-notes.xml:339
7156 jlepiller 809
msgid ""
8241 jlepiller 810
"Now issue the following command which uses two automation techniques, making"
811
" it suitable for use in an automated build script:"
7156 jlepiller 812
msgstr ""
813
"Maintenant lancez la commande suivante qui utilise les techniques "
814
"d'automatisation, rendant l'utilisation convenable dans un script de "
815
"construction automatisé&nbsp;:"
816
 
817
#. type: Content of: <sect1><sect2><screen>
7340 jlepiller 818
#: blfs-en/introduction/important/building-notes.xml:342
7156 jlepiller 819
#, no-wrap
8241 jlepiller 820
msgid ""
821
"<userinput>yes | ./blfs-yes-test2 &gt; blfs-yes-test2.log "
822
"2&gt;&amp;1</userinput>"
823
msgstr ""
824
"<userinput>yes | ./blfs-yes-test2 &gt; blfs-yes-test2.log "
825
"2&gt;&amp;1</userinput>"
7156 jlepiller 826
 
827
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 828
#: blfs-en/introduction/important/building-notes.xml:344
7156 jlepiller 829
msgid ""
8241 jlepiller 830
"If desired, issue <command>tail blfs-yes-test2.log</command> to see the end "
831
"of the paged output, and confirmation that <keycap>y</keycap> was passed "
832
"through to the script. Once satisfied that it works as it should, you may "
833
"remove the script and log file."
7156 jlepiller 834
msgstr ""
835
"Si vous le désirez, lancez <command>tail blfs-yes-test2.log</command> pour "
8241 jlepiller 836
"voir la fin de la sortie paginée et la confirmation que <keycap>y</keycap> a"
837
" été passé au script. Une fois que cela marche comme cela devrait, vous "
838
"pouvez supprimer le script et le fichier journal."
7156 jlepiller 839
 
840
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 841
#: blfs-en/introduction/important/building-notes.xml:349
7156 jlepiller 842
msgid ""
8241 jlepiller 843
"Finally, keep in mind that there are many ways to automate and/or script the"
844
" build commands. There is not a single <quote>correct</quote> way to do it. "
7156 jlepiller 845
"Your imagination is the only limit."
846
msgstr ""
7216 jlepiller 847
"Enfin, gardez à l'esprit qu'il y a de nombreux moyens d'automatiser ou de "
8241 jlepiller 848
"scripter les commandes de construction. Il n'y a pas <quote>une "
849
"seule</quote> manière de procéder. Votre imagination est la seule limite."
7156 jlepiller 850
 
851
#. type: Content of: <sect1><sect2><title>
7340 jlepiller 852
#: blfs-en/introduction/important/building-notes.xml:356
7156 jlepiller 853
msgid "Dependencies"
854
msgstr "Dépendances"
855
 
856
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 857
#: blfs-en/introduction/important/building-notes.xml:358
7156 jlepiller 858
msgid ""
859
"For each package described, BLFS lists the known dependencies.  These are "
860
"listed under several headings, whose meaning is as follows:"
861
msgstr ""
862
"Pour chaque paquet décrit, BLFS liste les dépendances connues. Elles sont "
8241 jlepiller 863
"listées sous plusieurs en-têtes, dont la signification est la "
864
"suivante&nbsp;:"
7156 jlepiller 865
 
866
#. type: Content of: <sect1><sect2><itemizedlist><listitem><para>
7340 jlepiller 867
#: blfs-en/introduction/important/building-notes.xml:363
7156 jlepiller 868
msgid ""
869
"<emphasis>Required</emphasis> means that the target package cannot be "
870
"correctly built without the dependency having first been installed."
871
msgstr ""
872
"<emphasis>Requis</emphasis> signifie que le paquet cible ne peut pas se "
873
"construire correctement sans avoir d'abord installé la dépendance."
874
 
875
#. type: Content of: <sect1><sect2><itemizedlist><listitem><para>
7340 jlepiller 876
#: blfs-en/introduction/important/building-notes.xml:368
7156 jlepiller 877
msgid ""
878
"<emphasis>Recommended</emphasis> means that BLFS strongly suggests this "
8241 jlepiller 879
"package is installed first for a clean and trouble-free build, that won't "
880
"have issues either during the build process, or at run-time.  The "
881
"instructions in the book assume these packages are installed.  Some changes "
882
"or workarounds may be required if these packages are not installed."
7156 jlepiller 883
msgstr ""
884
"<emphasis>Recommandées</emphasis> signifie que BLFS suggère fortement "
885
"d'installer préalablement ce paquet pour une construction propre et sans "
8241 jlepiller 886
"problème, ni pendant le processus de construction ni au moment de "
887
"l'exécution. Les instructions dans le livre considèrent que ses paquets sont"
888
" installés. Des modifications ou contournements peuvent être requis si ces "
889
"paquets ne sont pas installés."
7156 jlepiller 890
 
891
#. type: Content of: <sect1><sect2><itemizedlist><listitem><para>
7340 jlepiller 892
#: blfs-en/introduction/important/building-notes.xml:376
7156 jlepiller 893
msgid ""
8241 jlepiller 894
"<emphasis>Optional</emphasis> means that this package might be installed for"
895
" added functionality. Often BLFS will describe the dependency to explain the"
896
" added functionality that will result."
7156 jlepiller 897
msgstr ""
898
"<emphasis>Facultatives</emphasis> signifie que ce paquet pourrait être "
8241 jlepiller 899
"installé pour ajouter des fonctions. BLFS décrira souvent la dépendance pour"
900
" expliquer la fonctionnalité supplémentaire résultante."
7156 jlepiller 901
 
902
#. type: Content of: <sect1><sect2><title>
7340 jlepiller 903
#: blfs-en/introduction/important/building-notes.xml:385
7156 jlepiller 904
msgid "Using the Most Current Package Sources"
905
msgstr "Utilisation de paquets sources plus récents"
906
 
907
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 908
#: blfs-en/introduction/important/building-notes.xml:387
7156 jlepiller 909
msgid ""
8241 jlepiller 910
"On occasion you may run into a situation in the book when a package will not"
911
" build or work properly. Though the Editors attempt to ensure that every "
7156 jlepiller 912
"package in the book builds and works properly, sometimes a package has been "
913
"overlooked or was not tested with this particular version of BLFS."
914
msgstr ""
915
"Occasionnellement, dans le livre, vous pourrez être dans la situation ou un "
916
"paquet ne se construit pas ou ne fonctionne pas correctement. Bien que les "
917
"éditeurs tentent de faire en sorte que chaque paquet dans le livre se "
8241 jlepiller 918
"construise et fonctionne correctement, parfois un paquet a été oublié ou n'a"
919
" pas été testé avec cette version particulière de BLFS."
7156 jlepiller 920
 
921
#. type: Content of: <sect1><sect2><para>
7340 jlepiller 922
#: blfs-en/introduction/important/building-notes.xml:393
7156 jlepiller 923
msgid ""
8241 jlepiller 924
"If you discover that a package will not build or work properly, you should "
925
"see if there is a more current version of the package. Typically this means "
926
"you go to the maintainer's web site and download the most current tarball "
927
"and attempt to build the package. If you cannot determine the maintainer's "
928
"web site by looking at the download URLs, use Google and query the package's"
929
" name. For example, in the Google search bar type: 'package_name download' "
930
"(omit the quotes) or something similar. Sometimes typing: 'package_name home"
931
" page' will result in you finding the maintainer's web site."
7156 jlepiller 932
msgstr ""
933
"Si vous découvrez un paquet qui ne se construit pas ou ne fonctionne pas "
8241 jlepiller 934
"correctement, vous pouvez regarder s'il s'agit de la version la plus récente"
935
" du paquet. Typiquement, cela signifie que vous irez sur le site web du "
7156 jlepiller 936
"mainteneur et téléchargerez l'archive la plus récente et tenterez de "
937
"construire le paquet.  Si vous ne pouvez pas déterminer le site web du "
938
"mainteneur en regardant l'URL de chargement, utilisez Google et cherchez le "
939
"nom du paquet. Par exemple, dans la barre de recherche de Google tapez: "
8241 jlepiller 940
"'nom_du_paquet download' (sans les guillemets)  ou quelque chose de "
941
"similaire. Parfois en tapant&nbsp;: 'nom_du_paquet home page' vous trouverez"
942
" le site web du mainteneur."
7156 jlepiller 943
 
944
#. type: Content of: <sect1><sect2><title>
7340 jlepiller 945
#: blfs-en/introduction/important/building-notes.xml:406
7156 jlepiller 946
msgid "Stripping One More Time"
947
msgstr "Nettoyage une fois de plus"
948
 
949
#. type: Content of: <sect1><sect2><para>
7376 jlepiller 950
#: blfs-en/introduction/important/building-notes.xml:409
7156 jlepiller 951
msgid ""
8241 jlepiller 952
"In LFS, stripping of debugging symbols was discussed a couple of times.  "
953
"When building BLFS packages, there are generally no special instructions "
954
"that discuss stripping again.  It is probably not a good idea to strip an "
7156 jlepiller 955
"executable or a library while it is in use, so exiting any windowing "
956
"environment is a good idea.  Then you can do:"
957
msgstr ""
8241 jlepiller 958
"Dans LFS, le nettoyage des symboles de déboguage a été discuté de nombreuses"
959
" fois.  Pour la construction des paquets BLFS, il n'y a généralement pas "
960
"d'instructions qui discute de nouveau du nettoyage. Ce n'est probablement "
961
"pas une bonne idée de nettoyer un exécutable ou une bibliothèque tant qu'ils"
962
" sont utilisés, alors sortir des environnements de fenêtrage est une bonne "
963
"idée. Ensuite vous pouvez faire&nbsp;:"
7156 jlepiller 964
 
965
#. type: Content of: <sect1><sect2><screen>
7376 jlepiller 966
#: blfs-en/introduction/important/building-notes.xml:416
7156 jlepiller 967
#, no-wrap
7165 jlepiller 968
msgid ""
7806 jlepiller 969
"<userinput>find /{,usr/}{bin,lib,sbin} \\\n"
970
"    -type f \\( -name \\*.so* -a ! -name \\*dbg \\) \\\n"
971
"    -exec strip --strip-unneeded {} \\;</userinput>"
7165 jlepiller 972
msgstr ""
7806 jlepiller 973
"<userinput>find /{,usr/}{bin,lib,sbin} \\\n"
974
"    -type f \\( -name \\*.so* -a ! -name \\*dbg \\) \\\n"
975
"    -exec strip --strip-unneeded {} \\;</userinput>"
7156 jlepiller 976
 
977
#. type: Content of: <sect1><sect2><para>
7806 jlepiller 978
#: blfs-en/introduction/important/building-notes.xml:421
7156 jlepiller 979
msgid ""
8241 jlepiller 980
"If you install programs in other directories such as <filename "
981
"class=\"directory\">/opt</filename> or <filename "
982
"class=\"directory\">/usr/local</filename>, you may want to strip the files "
983
"there too."
7156 jlepiller 984
msgstr ""
8241 jlepiller 985
"Si vous installez des programmes dans d'autres répertoires tels que "
986
"<filename class=\"directory\">/opt</filename> ou <filename "
987
"class=\"directory\">/usr/local</filename>, vous pouvez vouloir nettoyer les "
988
"fichiers ici aussi."
7156 jlepiller 989
 
990
#. type: Content of: <sect1><sect2><para>
7806 jlepiller 991
#: blfs-en/introduction/important/building-notes.xml:428
7156 jlepiller 992
msgid ""
8241 jlepiller 993
"For more information on stripping, see <ulink "
994
"url=\"http://www.technovelty.org/linux/stripping-shared-libraries.html\"/>."
7156 jlepiller 995
msgstr ""
8241 jlepiller 996
"Pour plus d'information sur le nettoyage, regardez <ulink "
997
"url=\"http://www.technovelty.org/linux/stripping-shared-libraries.html\"/>."
7156 jlepiller 998
 
7860 jlepiller 999
#. type: Content of: <sect1><sect2><title>
1000
#: blfs-en/introduction/important/building-notes.xml:457
1001
msgid "Working with different build systems"
1002
msgstr "Travailler avec différents systèmes de construction"
1003
 
1004
#. type: Content of: <sect1><sect2><para>
1005
#: blfs-en/introduction/important/building-notes.xml:460
1006
msgid ""
8241 jlepiller 1007
"There are now three different build systems in common use for converting C "
1008
"or C++ source code into compiled programs or libraries and their details "
1009
"(particularly, finding out about available options and their default values)"
1010
" differ. It may be easiest to understand the issues caused by some choices "
1011
"(typically slow execution or unexpected use of, or omission of, "
1012
"optimizatons) by starting with the CFLAGS and CXXFLAGS environment "
1013
"variables.  There are also some programs which use rust."
7860 jlepiller 1014
msgstr ""
7861 jlepiller 1015
"Il y a maintenant trois systèmes de construction différents utilisés "
8241 jlepiller 1016
"régulièrement pour convertir du code source C ou C++ en un programme compilé"
1017
" ou en une bibliothèque et leur fonctionnement (en particulier, comment "
1018
"trouver les options disponibles et leurs valeurs par défaut) est différent. "
1019
"Il peut être plus facile de comprendre les problèmes causés par certains "
1020
"choix (typiquement une exécution lente ou l'utilisation (ou l'omission) "
1021
"inattendue des optimisations) en commençant par les variable d'environnement"
1022
" CFLAGS et CXXFLAGS. Certains programmes utilisent aussi rust."
7860 jlepiller 1023
 
1024
#. type: Content of: <sect1><sect2><para>
8024 jlepiller 1025
#: blfs-en/introduction/important/building-notes.xml:471
7860 jlepiller 1026
msgid ""
1027
"Most LFS and BLFS builders are probably aware of the basics of CFLAGS and "
1028
"CXXFLAGS for altering how a program is compiled. Typically, some form of "
8241 jlepiller 1029
"optimization is used by upstream developers (-O2 or -O3), sometimes with the"
1030
" creation of debug symbols (-g), as defaults."
7860 jlepiller 1031
msgstr ""
7861 jlepiller 1032
"La plupart des lecteurs de LFS et de BLFS connaissent probablement déjà les "
8241 jlepiller 1033
"bases de l'utilisation de CFLAGS et CXXFLAGS pour altérer la compilation "
1034
"d'un programme. Typiquement, certaines formes d'optimisations sont utilisés "
1035
"par les développeurs en amont (-O2 ou -O3), parfois avec la création de "
1036
"symboles de débogage (-g) par défaut."
7860 jlepiller 1037
 
1038
#. type: Content of: <sect1><sect2><para>
8024 jlepiller 1039
#: blfs-en/introduction/important/building-notes.xml:478
7860 jlepiller 1040
msgid ""
1041
"If there are contradictory flags (e.g. multiple different -O values), the "
8241 jlepiller 1042
"<emphasis>last</emphasis> value will be used. Sometimes this means that "
1043
"flags specified in environment variables will be picked up before values "
1044
"hardcoded in the Makefile, and therefore ignored.  For example, where a user"
1045
" specifies '-O2' and that is followed by '-O3' the build will use '-O3'."
7860 jlepiller 1046
msgstr ""
8241 jlepiller 1047
"S'il y a des drapeaux contradictoires (p. ex. plusieurs valeurs différentes "
1048
"de -O), la <emphasis>dernière</emphasis> valeur sera utilisée. Parfois les "
1049
"drapeaux spécifiés dans les variables d'environnement sont insérés avant les"
1050
" valeurs en dur dans le Makefile, ce qui signifie qu'ils sont ignorés. Par "
7861 jlepiller 1051
"exemple, si un utilisateur spécifie «&nbsp;-O2&nbsp;» et qu'il est suivi de "
1052
"«&nbsp;-O3&nbsp;», la construction utilisera «&nbsp;-O3&nbsp;»."
7860 jlepiller 1053
 
1054
#. type: Content of: <sect1><sect2><para>
8024 jlepiller 1055
#: blfs-en/introduction/important/building-notes.xml:487
7860 jlepiller 1056
msgid ""
8241 jlepiller 1057
"There are various other things which can be passed in CFLAGS or CXXFLAGS, "
1058
"such as forcing compilation for a specific microarchitecture (e.g. "
1059
"-march=amdfam10, -march=native) or specifying a specific standard for C or "
1060
"C++ (-std=c++17 for example). But one thing which has now come to light is "
1061
"that programmers might include debug assertions in their code, expecting "
1062
"them to be disabled in releases by using -DNDEBUG.  Specifically, if <xref "
1063
"linkend=\"mesa\"/> is built with these assertions enabled, some activities "
1064
"such as loading levels of games can take extremely long times, even on high-"
1065
"class video cards."
7860 jlepiller 1066
msgstr ""
7861 jlepiller 1067
"On peut passer divers autres drapeaux dans CFLAGS et CXXFLAGS, comme pour "
8241 jlepiller 1068
"forcer la compilation pour une microarchitecture spécifique (p. ex. "
1069
"-march=amdfam10, -march=native) ou pour spécifier un standard C ou C++ "
1070
"particulier (-std=c++17 par exemple). Mais ce qui commence à apparaître, "
1071
"c'est l'inclusion par les développeurs d'assertions de débogage dans leur "
1072
"code qui sont généralement désactivés dans les versions publiées avec "
1073
"-DNDEBUG. Plus spécifiquement, si <xref linkend=\"mesa\"/> est construit "
1074
"avec ces assertions, certaines activités comme le chargement de niveaux dans"
1075
" les jeux peuvent prendre très longtemps, même sur des cartes vidéo haut de "
1076
"gamme."
7860 jlepiller 1077
 
1078
#. type: Content of: <sect1><sect2><bridgehead>
8024 jlepiller 1079
#: blfs-en/introduction/important/building-notes.xml:498
7860 jlepiller 1080
msgid "Autotools with Make"
7861 jlepiller 1081
msgstr "Autotools avec Make"
7860 jlepiller 1082
 
1083
#. type: Content of: <sect1><sect2><para>
8024 jlepiller 1084
#: blfs-en/introduction/important/building-notes.xml:501
7860 jlepiller 1085
msgid ""
8241 jlepiller 1086
"This combination is often described as 'CMMI' (configure, make, make "
1087
"install) and is used here to also cover the few packages which have a "
1088
"configure script that is not generated by autotools."
7860 jlepiller 1089
msgstr ""
7861 jlepiller 1090
"Cette combinaison est souvent décrite comme «&nbsp;CMMI&nbsp;» (configure, "
1091
"make, make install) et est utilisée ici pour couvrir aussi certains paquets "
1092
"dont le script configure n'a pas été généré par les autotools."
7860 jlepiller 1093
 
1094
#. type: Content of: <sect1><sect2><para>
8024 jlepiller 1095
#: blfs-en/introduction/important/building-notes.xml:507
7860 jlepiller 1096
msgid ""
1097
"Sometimes running <command>./configure --help</command> will produce useful "
8241 jlepiller 1098
"options about switches which might be used.  At other times, after looking "
1099
"at the output from configure you may need to look at the details of the "
1100
"script to find out what it was actually searching for."
7860 jlepiller 1101
msgstr ""
7861 jlepiller 1102
"Parfois lancer <command>./configure --help</command> affichera les options "
1103
"utiles des paramètres qui peuvent être utilisés. D'autres fois, après avoir "
1104
"regardé la sortie de configure vous pourriez avoir besoin de regarder les "
1105
"détails du script pour comprendre ce qu'il cherchait vraiment."
7860 jlepiller 1106
 
1107
#. type: Content of: <sect1><sect2><para>
8024 jlepiller 1108
#: blfs-en/introduction/important/building-notes.xml:515
7860 jlepiller 1109
msgid ""
1110
"Many configure scripts will pick up any CFLAGS or CXXFLAGS from the "
1111
"environment, but CMMI packages vary about how these will be mixed with any "
8241 jlepiller 1112
"flags which would otherwise be used (<emphasis>variously</emphasis>: "
1113
"ignored, used to replace the programmer's suggestion, used before the "
1114
"programmer's suggestion, or used after the programmer's suggestion)."
7860 jlepiller 1115
msgstr ""
7861 jlepiller 1116
"De nombreux scripts configure récupéreront les CFLAGS et CXXFLAGS de "
8241 jlepiller 1117
"l'environnement, mais les paquets CMMI varient dans la manière dont ils "
1118
"seront insérés avec les drapeaux qui seraient sinon utilisés (<emphasis>au "
1119
"choix</emphasis>&nbsp;: ignorés, utilisés à la place de la suggestion des "
1120
"programmeurs, utilisés avant la suggestion des programmeurs ou utilisés "
1121
"après la suggestion des programmeurs)."
7860 jlepiller 1122
 
1123
#. type: Content of: <sect1><sect2><para>
8024 jlepiller 1124
#: blfs-en/introduction/important/building-notes.xml:523
7860 jlepiller 1125
msgid ""
1126
"In most CMMI packages, running 'make' will list each command and run it, "
8241 jlepiller 1127
"interspersed with any warnings. But some packages try to be 'silent' and "
1128
"only show which file they are compiling or linking instead of showing the "
1129
"command line. If you need to inspect the command, either because of an "
1130
"error, or just to see what options and flags are being used, adding 'V=1' to"
1131
" the make invocation may help."
7860 jlepiller 1132
msgstr ""
7861 jlepiller 1133
"Dans la plupart des paquets CMMI, «&nbsp;make&nbsp;» listera les commande "
1134
"lancées, séparées par des avertissements éventuels. Mais certains paquets "
1135
"essayent d'être «&nbsp;silencieux&nbsp;» et ne montrent que les fichiers "
8241 jlepiller 1136
"qu'ils compilent ou dont ils éditent les liens au lieu de montrer la ligne "
1137
"de commande. Si vous devez inspecter la commande, soit à cause d'une erreur,"
1138
" ou juste pour voir les options et les drapeaux utilisés, ajouter "
1139
"«&nbsp;V=1&nbsp;» à l'invocation make peut aider."
7860 jlepiller 1140
 
1141
#. type: Content of: <sect1><sect2><bridgehead>
8024 jlepiller 1142
#: blfs-en/introduction/important/building-notes.xml:531
7860 jlepiller 1143
msgid "CMake"
1144
msgstr "CMake"
1145
 
1146
#. type: Content of: <sect1><sect2><para>
8024 jlepiller 1147
#: blfs-en/introduction/important/building-notes.xml:534
7860 jlepiller 1148
msgid ""
8241 jlepiller 1149
"CMake works in a very different way, and it has two backends which can be "
1150
"used on BLFS: 'make' and 'ninja'. The default backend is make, but ninja can"
1151
" be faster on large packages with multiple processors. To use ninja, specify"
1152
" '-G Ninja' in the cmake command. However, there are some packages which "
1153
"create fatal errors in their ninja files but build successfully using the "
1154
"default of Unix Makefiles."
7860 jlepiller 1155
msgstr ""
8241 jlepiller 1156
"CMake fonctionne de manière différente, et il a deux moteurs qui peuvent "
1157
"être utilisés sur BLFS&nbsp;: «&nbsp;make&nbsp;» et «&nbsp;ninja&nbsp;». Le "
1158
"moteur par défaut est make, mais ninja est plus rapide sur les paquets plus "
1159
"gros avec plusieurs processeurs. Pour utiliser ninja, spécifiez «&nbsp;-G "
1160
"Ninja&nbsp;» dans la commande cmake. Cependant, certains paquets peuvent "
1161
"avoir des erreurs fatales dans leurs fichiers ninja tout en pouvant être "
1162
"construits sans problème avec les Makefile Unix par défaut."
7860 jlepiller 1163
 
1164
#. type: Content of: <sect1><sect2><para>
8237 jlepiller 1165
#: blfs-en/introduction/important/building-notes.xml:543
7860 jlepiller 1166
msgid ""
1167
"The hardest part of using CMake is knowing what options you might wish to "
8241 jlepiller 1168
"specify. The only way to get a list of what the package knows about is to "
1169
"run <command>cmake -LAH</command> and look at the output for that default "
7860 jlepiller 1170
"configuration."
1171
msgstr ""
8241 jlepiller 1172
"La partie la plus dure de l'utilisation de CMake est de connaître les "
1173
"options que vous voudrez spécifier. La seule manière de récupérer une liste "
1174
"de ce que le paquet connait est de lancer <command>cmake -LAH</command> et "
1175
"de regarder la sortie pour cette configuration par défaut."
7860 jlepiller 1176
 
1177
#. type: Content of: <sect1><sect2><para>
8237 jlepiller 1178
#: blfs-en/introduction/important/building-notes.xml:550
7860 jlepiller 1179
msgid ""
1180
"Perhaps the most-important thing about CMake is that it has a variety of "
8241 jlepiller 1181
"CMAKE_BUILD_TYPE values, and these affect the flags. The default is that "
1182
"this is not set and no flags are generated. Any CFLAGS or CXXFLAGS in the "
7860 jlepiller 1183
"environment will be used. If the programmer has coded any debug assertions, "
8241 jlepiller 1184
"those will be enabled unless -DNDEBUG is used.  The following "
1185
"CMAKE_BUILD_TYPE values will generate the flags shown, and these will come "
1186
"<emphasis>after</emphasis> any flags in the environment and therefore take "
1187
"precedence."
7860 jlepiller 1188
msgstr ""
7861 jlepiller 1189
"Peut-être que la chose la plus importante à propos de CMake est qu'il a "
8241 jlepiller 1190
"plusieurs valeurs de CMAKE_BUILD_TYPE, et qu'elles affectent les drapeaux. "
1191
"La valeur par défaut est vide et aucun drapeau n'est généré. Les CFLAGS et "
7861 jlepiller 1192
"CXXFLAGS dans l'environnement seront utilisés. Si le programmeur a codé des "
8241 jlepiller 1193
"assertions de débogage, elles seront activées à moins que vous n'utilisiez "
1194
"-DNDEBUG. Les valeurs CMAKE_BUILD_TYPE suivantes généreront les drapeaux "
1195
"associés, et ils seront ajoutés <emphasis>après</emphasis> les drapeaux dans"
1196
" l'environnement et prennent donc le pas dessus."
7860 jlepiller 1197
 
1198
#. type: Content of: <sect1><sect2><itemizedlist><listitem><para>
8237 jlepiller 1199
#: blfs-en/introduction/important/building-notes.xml:562
7860 jlepiller 1200
msgid "Debug : '-g'"
7861 jlepiller 1201
msgstr "Debug&nbsp;: «&nbsp;-g&nbsp;»"
7860 jlepiller 1202
 
1203
#. type: Content of: <sect1><sect2><itemizedlist><listitem><para>
8237 jlepiller 1204
#: blfs-en/introduction/important/building-notes.xml:565
7860 jlepiller 1205
msgid "Release : '-O3 -DNDEBUG'"
7861 jlepiller 1206
msgstr "Release&nbsp;: «&nbsp;-O3 -DNDEBUG&nbsp;»"
7860 jlepiller 1207
 
1208
#. type: Content of: <sect1><sect2><itemizedlist><listitem><para>
8237 jlepiller 1209
#: blfs-en/introduction/important/building-notes.xml:568
7860 jlepiller 1210
msgid "RelWithDebInfo : '-O2 -g -DNDEBUG'"
7861 jlepiller 1211
msgstr "RelWithDebInfo&nbsp;: «&nbsp;-O2 -g -DNDEBUG&nbsp;»"
7860 jlepiller 1212
 
1213
#. type: Content of: <sect1><sect2><itemizedlist><listitem><para>
8237 jlepiller 1214
#: blfs-en/introduction/important/building-notes.xml:571
7860 jlepiller 1215
msgid "MinSizeRel : '-Os -DNDEBUG'"
7861 jlepiller 1216
msgstr "MinSizeRel&nbsp;: «&nbsp;-Os -DNDEBUG&nbsp;»"
7860 jlepiller 1217
 
1218
#. type: Content of: <sect1><sect2><para>
8237 jlepiller 1219
#: blfs-en/introduction/important/building-notes.xml:576
7860 jlepiller 1220
msgid ""
8241 jlepiller 1221
"CMake tries to produce quiet builds. To see the details of the commands "
1222
"which are being run, use 'make VERBOSE=1' or 'ninja -v'."
7860 jlepiller 1223
msgstr ""
8241 jlepiller 1224
"CMake essaye de produire des constructions silencieuses. Pour voir les "
1225
"détails des commandes lancées, utilisez «&nbsp;make VERBOSE=1&nbsp;» ou "
1226
"«&nbsp;ninja -v&nbsp;»."
7860 jlepiller 1227
 
1228
#. type: Content of: <sect1><sect2><bridgehead>
8237 jlepiller 1229
#: blfs-en/introduction/important/building-notes.xml:580
7860 jlepiller 1230
msgid "Meson"
1231
msgstr "Meson"
1232
 
1233
#. type: Content of: <sect1><sect2><para>
8237 jlepiller 1234
#: blfs-en/introduction/important/building-notes.xml:583
7860 jlepiller 1235
msgid ""
8241 jlepiller 1236
"Meson has some similarities to CMake, but many differences. To get details "
1237
"of the defines that you may wish to change you can look at "
7862 jlepiller 1238
"<filename>meson_options.txt</filename> which is usually in the top-level "
1239
"directory."
7860 jlepiller 1240
msgstr ""
7861 jlepiller 1241
"Meson ressemble un peu à CMake, mais avec beaucoup de différences. Pour "
8241 jlepiller 1242
"trouver les détails des définitions que vous pourriez avoir besoin de "
1243
"modifier vous pouvez regarder dans <filename>meson_options.txt</filename> "
1244
"qui est généralement dans le répertoire de plus haut niveau."
7860 jlepiller 1245
 
1246
#. type: Content of: <sect1><sect2><para>
8237 jlepiller 1247
#: blfs-en/introduction/important/building-notes.xml:590
7860 jlepiller 1248
msgid ""
8241 jlepiller 1249
"If you have already configured the package by running "
1250
"<command>meson</command> and now wish to change one or more settings, you "
1251
"can either remove the build directory, recreate it, and use the altered "
1252
"options, or within the build directory run <command>meson "
1253
"configure</command>, e.g. to set an option:"
7860 jlepiller 1254
msgstr ""
8241 jlepiller 1255
"Si vous avez déjà configuré le paquet en lançant <command>meson</command> et"
1256
" que vous souhaitez maintenant changer un ou plusieurs paramètres, vous "
1257
"pouvez soit supprimer le répertoire de construction, le recréer et utiliser "
1258
"les options modifiées, soit lancer <command>meson configure</command> dans "
1259
"le répertoire de construction, p. ex. pour ajouter une option&nbsp;:"
7860 jlepiller 1260
 
1261
#. type: Content of: <sect1><sect2><screen>
8237 jlepiller 1262
#: blfs-en/introduction/important/building-notes.xml:597
7860 jlepiller 1263
#, no-wrap
7862 jlepiller 1264
msgid "<userinput>meson configure -D&lt;some_option&gt;=true</userinput>"
1265
msgstr "<userinput>meson configure -D&lt;some_option&gt;=true</userinput>"
7860 jlepiller 1266
 
1267
#. type: Content of: <sect1><sect2><para>
8237 jlepiller 1268
#: blfs-en/introduction/important/building-notes.xml:600
7860 jlepiller 1269
msgid ""
8241 jlepiller 1270
"If you do that, the file <filename>meson-private/cmd_line.txt</filename> "
1271
"will show the <emphasis>last</emphasis> commands which were used."
7860 jlepiller 1272
msgstr ""
8241 jlepiller 1273
"Si vous faîtes cela, le fichier <filename>meson-"
1274
"private/cmd_line.txt</filename> contiendra les "
1275
"<emphasis>dernières</emphasis> commandes qui ont été utilisées."
7860 jlepiller 1276
 
1277
#. type: Content of: <sect1><sect2><para>
8237 jlepiller 1278
#: blfs-en/introduction/important/building-notes.xml:605
7860 jlepiller 1279
msgid ""
8241 jlepiller 1280
"Meson provides the following buildtype values, and the flags they enable "
1281
"come <emphasis>after</emphasis> any flags supplied in the environment and "
1282
"therefore take precedence."
7860 jlepiller 1283
msgstr ""
7861 jlepiller 1284
"Meson fournit les valeurs buildtype suivantes, et les drapeaux qu'elles "
1285
"activent viennent <emphasis>après</emphasis> les drapeaux fournis dans "
1286
"l'environnement et prennent donc le pas."
7860 jlepiller 1287
 
1288
#. type: Content of: <sect1><sect2><itemizedlist><listitem><para>
8237 jlepiller 1289
#: blfs-en/introduction/important/building-notes.xml:612
7860 jlepiller 1290
msgid ""
8241 jlepiller 1291
"plain : no added flags. This is for distributors to supply their own CLFAGS,"
1292
" CXXFLAGS and LDFLAGS. There is no obvious reason to use this in BLFS."
7860 jlepiller 1293
msgstr ""
7861 jlepiller 1294
"plain&nbsp;: pas de drapeau supplémentaire. Cela est utilisé pour spécifier "
8241 jlepiller 1295
"ses propres CFLAGS, CXXFLAGS et LDFLAGS. Il n'y a pas de raison évidente "
1296
"pour utiliser cela dans BLFS."
7860 jlepiller 1297
 
1298
#. type: Content of: <sect1><sect2><itemizedlist><listitem><para>
8237 jlepiller 1299
#: blfs-en/introduction/important/building-notes.xml:617
7860 jlepiller 1300
msgid "debug : '-g'"
7861 jlepiller 1301
msgstr "debug&nbsp;: «&nbsp;-g&nbsp;»"
7860 jlepiller 1302
 
1303
#. type: Content of: <sect1><sect2><itemizedlist><listitem><para>
8237 jlepiller 1304
#: blfs-en/introduction/important/building-notes.xml:620
7860 jlepiller 1305
msgid ""
1306
"debugoptimized : '-O2 -g' - this is the default if nothing is specified, it "
1307
"leaves assertions enabled."
1308
msgstr ""
7861 jlepiller 1309
"debugoptimized&nbsp;: «&nbsp;-O2 -g&nbsp;» - c'est la valeur par défaut si "
1310
"rien n'est spécifié, elle laisse les assertions activées."
7860 jlepiller 1311
 
1312
#. type: Content of: <sect1><sect2><itemizedlist><listitem><para>
8237 jlepiller 1313
#: blfs-en/introduction/important/building-notes.xml:624
8241 jlepiller 1314
msgid ""
1315
"release : '-O3 -DNDEBUG' (but occasionally a package will force -O2 here)"
8024 jlepiller 1316
msgstr ""
8241 jlepiller 1317
"release&nbsp;: «&nbsp;-O3 -DNDEBUG&nbsp;» (mais parfois un paquet forcera "
1318
"-O2)"
7860 jlepiller 1319
 
1320
#. type: Content of: <sect1><sect2><para>
8237 jlepiller 1321
#: blfs-en/introduction/important/building-notes.xml:630
7860 jlepiller 1322
msgid ""
1323
"Although the 'release' buildtype is described as enabling -DNDEBUG, and all "
8241 jlepiller 1324
"CMake Release builds pass that, it has so far only been observed (in verbose"
1325
" builds) for <xref linkend=\"mesa\"/>. That suggests that it might only be "
1326
"used when there are debug assertions present."
7860 jlepiller 1327
msgstr ""
8241 jlepiller 1328
"Bien que le type «&nbsp;release&nbsp;» soit décrit comme activant -DNDEBUG "
1329
"et que toutes les constructions CMake en Release le passent, cela n'a été "
1330
"observé jusque là (sur les constructions verbeuses) que pour <xref "
1331
"linkend=\"mesa\"/>. Cela suggère qu'il ne serait utilisé que s'il y a des "
1332
"assertions de débogage."
7860 jlepiller 1333
 
1334
#. type: Content of: <sect1><sect2><para>
8237 jlepiller 1335
#: blfs-en/introduction/important/building-notes.xml:637
7860 jlepiller 1336
msgid ""
8241 jlepiller 1337
"The -DNDEBUG flag can also be provided by passing "
1338
"<command>-Db_ndebug=true</command>."
7860 jlepiller 1339
msgstr ""
8241 jlepiller 1340
"Le drapeau -DNDEBUG peut aussi être fournit en passant "
1341
"<command>-Db_ndebug=true</command>."
7860 jlepiller 1342
 
1343
#. type: Content of: <sect1><sect2><para>
8237 jlepiller 1344
#: blfs-en/introduction/important/building-notes.xml:642
7860 jlepiller 1345
msgid ""
1346
"To see the details of the commands which are being run in a package using "
1347
"meson, use 'ninja -v'."
1348
msgstr ""
8241 jlepiller 1349
"Pour voir les détails des commandes qui sont lancés dans un paquet qui "
1350
"utilise meson, utilisez «&nbsp;ninja -v&nbsp;»."
7860 jlepiller 1351
 
8024 jlepiller 1352
#. type: Content of: <sect1><sect2><bridgehead>
8237 jlepiller 1353
#: blfs-en/introduction/important/building-notes.xml:646
8024 jlepiller 1354
msgid "Rustc and Cargo"
1355
msgstr "Rustc et Cargo"
1356
 
1357
#. type: Content of: <sect1><sect2><para>
8237 jlepiller 1358
#: blfs-en/introduction/important/building-notes.xml:649
8024 jlepiller 1359
msgid ""
8241 jlepiller 1360
"Most released rustc programs are provided as crates (source tarballs)  which"
1361
" will query a server to check current versions of dependencies and then "
1362
"download them as necessary.  These packages are built using <command>cargo "
1363
"--release</command>. In theory, you can manipulate the RUSTFLAGS to change "
1364
"the optimize-level (default is 3, like -O3, e.g.  <literal>-Copt-"
1365
"level=3</literal>) or to force it to build for the machine it is being "
1366
"compiled on, using <literal>-Ctarget-cpu=native</literal> but in practice "
1367
"this seems to make no significant difference."
8024 jlepiller 1368
msgstr ""
8026 jlepiller 1369
"La plupart des programmes rustc publiés sont fournis dans des archives (ou "
1370
"«&nbsp;crates&nbsp;») qui demanderont à un serveur de vérifier les versions "
1371
"actuelles des dépendances et les téléchargera au besoin. Ces paquet sont "
1372
"construits avec <command>cargo --release</command>. En théorie, on peut "
8241 jlepiller 1373
"manipuler les RUSTFLAGS pour changer le niveau d'optimisation (par défaut 3,"
1374
" come -O3, p. ex. <literal>-Copt-level=3</literal>) ou pour forcer la "
1375
"construction pour la machine sur laquelle il est compilé, avec "
1376
"<literal>-Ctarget-cpu=native</literal> mais en pratique cela ne semble pas "
1377
"faire de réelle différence."
8024 jlepiller 1378
 
1379
#. type: Content of: <sect1><sect2><para>
8237 jlepiller 1380
#: blfs-en/introduction/important/building-notes.xml:661
8024 jlepiller 1381
msgid ""
8241 jlepiller 1382
"If you find an interesting rustc program which is only provided as "
1383
"unpackaged source, you should at least specify <literal>RUSTFLAGS=-Copt-"
1384
"level=2</literal> otherwise it will do an unoptimized compile with debug "
1385
"info and run <emphasis>much</emphasis> slower."
8024 jlepiller 1386
msgstr ""
8026 jlepiller 1387
"Si vous trouvez un programme rustc intéressant qui n'est fournit que sous "
1388
"forme de sources sans paquet, vous devriez au moins spécifier "
1389
"<literal>RUSTFLAGS=-Copt-level=2</literal> sans quoi rustc effectuera une "
1390
"compilation sans optimisation et et avec les informations de débogage et le "
1391
"résultat sera <emphasis>beaucoup</emphasis> plus lent."
8024 jlepiller 1392
 
8351 jlepiller 1393
#. type: Content of: <sect1><sect2><para>
1394
#: blfs-en/introduction/important/building-notes.xml:669
1395
msgid ""
1396
"The rust developers seem to assume that everyone will compile on a machine "
1397
"dedicated to producing builds, so by default all CPUs are used.  This can "
1398
"often be worked around, either by exporting CARGO_BUILD_JOBS=&lt;N&gt; or "
1399
"passing --jobs &lt;N&gt; to cargo. For compiling rustc itself, specifying "
1400
"--jobs &lt;N&gt; on invocations of x.py (together with the "
1401
"<envar>CARGO_BUILD_JOBS</envar> environment variable, which looks like a "
1402
"\"belt and braces\" approach but seems to be necessary) mostly works. The "
1403
"exception is running the tests when building rustc, some of them will "
1404
"nevertheless use all online CPUs, at least as of rustc-1.42.0."
1405
msgstr ""
8366 jlepiller 1406
"Les développeurs de rust ont l'air de supposer que tout le monde compile sur"
1407
" une machine dédiées aux constructions de production, donc par défaut tous "
1408
"les CPU sont utilisés. Cela peut souvent être changé, soit en exportant "
1409
"CARGO_BUILD_JOBS=&lt;N&gt; ou en passant --jobs &lt;N&gt; à cargo. Pour "
1410
"compiler rustc lui-même, spécifiez --jobs &lt;N&gt; lors de l'invocation de "
1411
"x.py (avec la variable d'environnement <envar>CARGO_BUILD_JOBS</envar>, ce "
1412
"qui ressemble à une approche «&nbsp;ceinture et bretelle&nbsp;» mais a l'air"
1413
" nécessaire). L'exception est le lancement des tests à la construction de "
1414
"rustc, où certains d'entre eux utiliseront tout de même tous les CPU en "
1415
"ligne, aux moins à partir de rustc-1.42.0."
8351 jlepiller 1416
 
8024 jlepiller 1417
#. type: Content of: <sect1><sect2><title>
8351 jlepiller 1418
#: blfs-en/introduction/important/building-notes.xml:684
8024 jlepiller 1419
msgid "Optimizing the build"
8026 jlepiller 1420
msgstr "Optimisation de la construction"
8024 jlepiller 1421
 
1422
#. type: Content of: <sect1><sect2><para>
8351 jlepiller 1423
#: blfs-en/introduction/important/building-notes.xml:687
8024 jlepiller 1424
msgid ""
1425
"Many people will prefer to optimize compiles as they see fit, by providing "
8241 jlepiller 1426
"CFLAGS or CXXFLAGS. For an introduction to the options available with gcc "
1427
"and g++ see <ulink url=\"https://gcc.gnu.org/onlinedocs/gcc/Optimize-"
1428
"Options.html\"/> and <ulink "
1429
"url=\"https://gcc.gnu.org/onlinedocs/gcc/Instrumentation-Options.html\"/> "
1430
"and <command>info gcc</command>."
8024 jlepiller 1431
msgstr ""
8026 jlepiller 1432
"De nombreuses personnes préfèrent optimiser la compilation à leur goût, en "
1433
"fournissant CFLAGS ou CXXFLAGS. Vous trouverez une introduction aux options "
8241 jlepiller 1434
"disponibles avec gcc et g++ sur <ulink "
1435
"url=\"https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html\"/>, <ulink "
1436
"url=\"https://gcc.gnu.org/onlinedocs/gcc/Instrumentation-Options.html\"/> et"
1437
" dans <command>info gcc</command>."
8024 jlepiller 1438
 
1439
#. type: Content of: <sect1><sect2><para>
8351 jlepiller 1440
#: blfs-en/introduction/important/building-notes.xml:697
8024 jlepiller 1441
msgid ""
1442
"Some packages default to '-O2 -g', others to '-O3 -g', and if CFLAGS or "
8241 jlepiller 1443
"CXXFLAGS are supplied they might be added to the package's defaults, replace"
1444
" the package's defaults, or even be ignored.  There are details on some "
1445
"desktop packages which were mostly current in April 2019 at <ulink "
1446
"url=\"http://www.linuxfromscratch.org/~ken/tuning/\"/> - in particular, "
1447
"README.txt, tuning-1-packages-and-notes.txt, and tuning-notes-2B.txt. The "
1448
"particular thing to remember is that if you want to try some of the more "
1449
"interesting flags you may need to force verbose builds to confirm what is "
1450
"being used."
8024 jlepiller 1451
msgstr ""
8241 jlepiller 1452
"Certains paquet utilisent par défaut «&nbsp;-O2 -g&nbsp;», d'autres "
1453
"«&nbsp;-O3 -g&nbsp;» et si les CFLAGS ou CXXFLAGS sont fournis ils peuvent "
1454
"être ajoutés aux valeurs par défaut du paquet, remplacer les valeurs par "
1455
"défaut ou même être ignorés. Il y a des détails sur les dernières versions "
1456
"(en avril 2019) de certains paquets graphiques sur <ulink "
1457
"url=\"http://www.linuxfromscratch.org/~ken/tuning/\"/> — en particulier, "
1458
"README.txt, tuning-1-packages-and-notes.txt et tuning-notes-2B.txt. Ce dont "
1459
"il faut se souvenir, c'est que si vous voulez essayer certains des drapeaux "
1460
"les plus intéressants vous devriez forcer les constructions à être plus "
1461
"verbeuses pour confirmer qu'elles sont utilisées."
8024 jlepiller 1462
 
1463
#. type: Content of: <sect1><sect2><para>
8351 jlepiller 1464
#: blfs-en/introduction/important/building-notes.xml:709
8024 jlepiller 1465
msgid ""
8241 jlepiller 1466
"Clearly, if you are optimizing your own program you can spend time to "
1467
"profile it and perhaps recode some of it if it is too slow. But for building"
1468
" a whole system that approach is impractical. In general, -O3 usually "
1469
"produces faster programs than -O2.  Specifying -march=native is also "
1470
"beneficial, but means that you cannot move the binaries to an incompatible "
1471
"machine - this can also apply to newer machines, not just to older machines."
1472
" For example programs compiled for 'amdfam10' run on old Phenoms, Kaveris, "
1473
"and Ryzens : but programs compiled for a Kaveri will not run on a Ryzen "
1474
"because certain op-codes are not present.  Similarly, if you build for a "
1475
"Haswell not everything will run on a SandyBridge."
8024 jlepiller 1476
msgstr ""
8026 jlepiller 1477
"Clairement, si vous optimisez votre propre programme vous pouvez passer du "
1478
"temps à effectuer des mesures et peut-être recoder certaines parties plutôt "
8241 jlepiller 1479
"lentes. Mais pour construire un système complet cette approche est "
1480
"impossible. En général, -O3 produit des programmes plus rapides que -O2. "
1481
"Spécifier -march=native est aussi bénéfique, mais cela signifie que vous ne "
1482
"pouvez pas utiliser les binaires sur une machine incompatible — cela "
1483
"s'applique aussi à des machines plus récentes, pas seulement à des machines "
1484
"plus vieilles. Par exemple les programmes compilés pour "
1485
"«&nbsp;amdfam10&nbsp;» peuvent tourner sur les vieux Phenoms, Kaveris et "
1486
"Ryzens&nbsp;; mais les programmes compilés pour un Kaveri ne tourneront pas "
1487
"sur un Ryzen parce que certains opcodes ne sont pas présents. De manière "
1488
"identique, si vous construisez pour un Haswell tout ne tournera pas sur un "
1489
"SandyBridge."
8024 jlepiller 1490
 
1491
#. type: Content of: <sect1><sect2><para>
8351 jlepiller 1492
#: blfs-en/introduction/important/building-notes.xml:723
8024 jlepiller 1493
msgid ""
8241 jlepiller 1494
"There are also various other options which some people claim are beneficial."
1495
" At worst, you get to recompile and test, and then discover that in your "
1496
"usage the options do not provide a benefit."
8024 jlepiller 1497
msgstr ""
8241 jlepiller 1498
"Il y a aussi diverses autres options que certains pensent bénéfiques. Au "
1499
"pire, vous devrez recompiler et tester, pour découvrir que pour votre "
1500
"utilisation ces options font rien de spécial."
8024 jlepiller 1501
 
1502
#. type: Content of: <sect1><sect2><para>
8351 jlepiller 1503
#: blfs-en/introduction/important/building-notes.xml:729
8024 jlepiller 1504
msgid ""
8241 jlepiller 1505
"If building Perl or Python modules, or Qt packages which use qmake, in "
1506
"general the CFLAGS and CXXFLAGS used are those which were used by those "
1507
"'parent' packages."
8024 jlepiller 1508
msgstr ""
8026 jlepiller 1509
"Si vous construisez des modules Perl ou Python, ou des paquets Qt qui "
8241 jlepiller 1510
"utilisent qmake, en général les CFLAGS et CXXFLAGS utilisés sont ceux "
1511
"utilisés pour construire ces paquets «&nbsp;parents&nbsp;»."
8024 jlepiller 1512
 
1513
#. type: Content of: <sect1><sect2><title>
8351 jlepiller 1514
#: blfs-en/introduction/important/building-notes.xml:737
8024 jlepiller 1515
msgid "Options for hardening the build"
8026 jlepiller 1516
msgstr "Options pour durcir la construction"
8024 jlepiller 1517
 
1518
#. type: Content of: <sect1><sect2><para>
8351 jlepiller 1519
#: blfs-en/introduction/important/building-notes.xml:740
8024 jlepiller 1520
msgid ""
8241 jlepiller 1521
"Even on desktop systems, there are still a lot of exploitable "
1522
"vulnerabilities. For many of these, the attack comes via javascript in a "
1523
"browser. Often, a series of vulnerabilities are used to gain access to data "
1524
"(or sometimes to pwn, i.e. own, the machine and install rootkits).  Most "
1525
"commercial distros will apply various hardening measures."
8024 jlepiller 1526
msgstr ""
8026 jlepiller 1527
"Même sur un système de bureau, il y a des vulnérabilités exploitables. Pour "
8241 jlepiller 1528
"beaucoup, l'attaque vient de javascript dans un navigateur. Souvent, une "
1529
"série de vulnérabilités sont utilisées pour récupérer un accès aux données "
1530
"(ou parfois pour powner, c.-à-d. cracker la machine et installer des "
1531
"rootkits). La plupart des distributions commerciales appliqueront diverses "
1532
"mesures de durcissement."
8024 jlepiller 1533
 
1534
#. type: Content of: <sect1><sect2><para>
8351 jlepiller 1535
#: blfs-en/introduction/important/building-notes.xml:749
8024 jlepiller 1536
msgid ""
8241 jlepiller 1537
"For hardening options which are reasonably cheap, there is some discussion "
1538
"in the 'tuning' link above (occasionally, one or more of these options might"
1539
" be inappropriate for a package). These options are -D_FORTIFY_SOURCE=2, "
1540
"-fstack-protector=strong, and (for C++) -D_GLIBCXX_ASSERTIONS. On modern "
1541
"machines these should only have a little impact on how fast things run, and "
1542
"often they will not be noticeable."
8024 jlepiller 1543
msgstr ""
8241 jlepiller 1544
"Pour les options de durcissement qui sont raisonnablement peu coûteuses, on "
1545
"en parle un peu dans le lien sur les expériences de peaufinage précédent "
1546
"(parfois une ou plus de ces options peuvent être inappropriées pour un "
1547
"paquet). Ces options sont -D_FORTIFY_SOURCE=2, -fstack-protector=strong et "
1548
"(pour C++) -D_GLIBCXX_ASSERTIONS. Sur les machines modernes elles ne "
1549
"devraient avoir qu'un très faible impact sur la vitesse des programmes et "
1550
"souvent ne seront même pas perceptibles."
8024 jlepiller 1551
 
1552
#. type: Content of: <sect1><sect2><para>
8351 jlepiller 1553
#: blfs-en/introduction/important/building-notes.xml:759
8024 jlepiller 1554
msgid ""
1555
"In the past, there was Hardened LFS where gcc (a much older version)  was "
8241 jlepiller 1556
"forced to use hardening (with options to turn some of it off on a per-"
1557
"package basis. What is being covered here is different - first you have to "
1558
"make sure that the package is indeed using your added flags and not over-"
1559
"riding them."
8024 jlepiller 1560
msgstr ""
8026 jlepiller 1561
"Par le passé, il existait un Hardened LFS (LFS durci) où gcc (une version "
1562
"beaucoup plus vieille) était forcé à utiliser le durcissement (avec des "
1563
"options pour les désactiver au cas par cas). Ce dont on parle ici est "
1564
"différent — vous devrez déjà vous assurer que le paquet utilise bien vos "
1565
"options supplémentaires et qu'il ne les écrase pas."
8024 jlepiller 1566
 
1567
#. type: Content of: <sect1><sect2><para>
8351 jlepiller 1568
#: blfs-en/introduction/important/building-notes.xml:767
8024 jlepiller 1569
msgid ""
1570
"The main distros use much more, such as RELRO (Relocation Read Only)  and "
1571
"perhaps -fstack-clash-protection. You may also encounter the so-called "
8241 jlepiller 1572
"'userspace retpoline' (-mindirect-branch=thunk etc.) which is the equivalent"
1573
" of the spectre mitigations applied to the linux kernel in late 2018). The "
1574
"kernel mitigations caused a lot of complaints about lost performance, if you"
1575
" have a production server you might wish to consider testing that, along "
1576
"with the other available options, to see if performance is still sufficient."
8024 jlepiller 1577
msgstr ""
8026 jlepiller 1578
"Les distros principales utilisent bien plus, comme RELRO (Relocation Read "
1579
"Only) et parfois -fstack-clash-protection. Vous pouvez aussi rencontrer les "
8241 jlepiller 1580
"«&nbsp;retpolines en espace utilisateur&nbsp;» (-mindirect-branch=thunk etc)"
1581
" qui sont équivalents aux atténuations de spectre appliqués au noyau linux "
1582
"fin 2018. Les atténuations du noyau ont causés de nombreuses plaintes à "
1583
"propos d'une perte de performances donc si vous avez un serveur en "
1584
"production vous devriez peut-être tester ça ainsi que d'autres options "
1585
"disponibles, pour voir si les performances sont toujours satisfaisantes."
8024 jlepiller 1586
 
1587
#. type: Content of: <sect1><sect2><para>
8351 jlepiller 1588
#: blfs-en/introduction/important/building-notes.xml:778
8434 jlepiller 1589
#, fuzzy
1590
#| msgid ""
1591
#| "Whilst gcc has many hardening options, clang/LLVM's strengths lie elsewhere."
1592
#| " Some options which gcc provides are said to be less effective in "
1593
#| "clang/LLVM, others are not available."
8024 jlepiller 1594
msgid ""
8241 jlepiller 1595
"Whilst gcc has many hardening options, clang/LLVM's strengths lie elsewhere."
1596
" Some options which gcc provides are said to be less effective in "
8434 jlepiller 1597
"clang/LLVM."
8024 jlepiller 1598
msgstr ""
8241 jlepiller 1599
"Tandis que gcc a de nombreuses options de durcissement, la force de "
1600
"clang/LLVM se trouve ailleurs. Certaines options fournies par gcc sont dite "
1601
"moins efficaces dans clang/LLVM et d'autres ne sont simplement pas "
1602
"disponibles."
8024 jlepiller 1603
 
1604
#~ msgid "release : '-O3 -DNDEBUG'"
1605
#~ msgstr "release&nbsp;: «&nbsp;-O3 -DNDEBUG&nbsp;»"
1606
 
7862 jlepiller 1607
#~ msgid ""
1608
#~ "<userinput>mkdir build\n"
1609
#~ "cd    build\n"
1610
#~ "meson ..\n"
1611
#~ "meson configure | less</userinput>"
1612
#~ msgstr ""
1613
#~ "<userinput>mkdir build\n"
1614
#~ "cd    build\n"
1615
#~ "meson ..\n"
1616
#~ "meson configure | less</userinput>"
1617
 
1618
#~ msgid ""
1619
#~ "After identifying what to set, meson then needs to be reconfigured.  For "
1620
#~ "example:"
1621
#~ msgstr ""
1622
#~ "Après avoir identifié ce qui est paramétré, meson devra être reconfiguré. "
1623
#~ "Par exemple&nbsp;:"
1624
 
1625
#~ msgid ""
1626
#~ "Alternatively, you could remove the build directory where you did this, "
1627
#~ "recreate it, and then run meson with the desired options."
1628
#~ msgstr ""
1629
#~ "Autrement, vous pourriez supprimer le répertoire de construction où vous "
1630
#~ "avez fait cela et le recréer, puis lancer meson avec les options voulues."
1631
 
7620 jlepiller 1632
#~ msgid "Libtool files"
1633
#~ msgstr "Fichiers Libtool"
7156 jlepiller 1634
 
7620 jlepiller 1635
#~ msgid ""
1636
#~ "One of the side effects of packages that use Autotools, including libtool, "
1637
#~ "is that they create many files with an .la extension.  These files are not "
1638
#~ "needed in an LFS environment.  If there are conflicts with pkgconfig "
1639
#~ "entries, they can actually prevent successful builds.  You may want to "
1640
#~ "consider removing these files periodically:"
1641
#~ msgstr ""
8241 jlepiller 1642
#~ "Un des effets de bord des paquets qui utilisent Autotools, incluant libtool,"
1643
#~ " est qu'ils créent beaucoup de fichiers avec une extension .la. Ces fichiers"
1644
#~ " ne sont pas utiles dans un environnement LFS. S'il y a des conflits avec "
1645
#~ "des entrées pkconfig, ils peuvent même empêcher des constructions correctes."
1646
#~ " Vous pouvez songer à effacer ces fichiers périodiquement&nbsp;:"
7156 jlepiller 1647
 
7620 jlepiller 1648
#~ msgid ""
8241 jlepiller 1649
#~ "<userinput>find /lib /usr/lib -not -path \"*Image*\" -a -name \\*.la "
1650
#~ "-delete</userinput>"
7620 jlepiller 1651
#~ msgstr ""
8241 jlepiller 1652
#~ "<userinput>find /lib /usr/lib -not -path \"*Image*\" -a -name \\*.la "
1653
#~ "-delete</userinput>"
7156 jlepiller 1654
 
7620 jlepiller 1655
#~ msgid ""
1656
#~ "The above command removes all .la files with the exception of those that "
8241 jlepiller 1657
#~ "have <quote>Image</quote> or <quote>openldap</quote> as a part of the path."
1658
#~ "  These .la files are used by the ImageMagick and openldap programs, "
7620 jlepiller 1659
#~ "respectively.  There may be other exceptions by packages not in BLFS."
1660
#~ msgstr ""
1661
#~ "La commande suivante efface tous les fichiers .la sauf ceux ayant "
1662
#~ "<quote>Image</quote> ou <quote>openldap</quote> dans une partie de leur "
8241 jlepiller 1663
#~ "chemin.  Ces fichiers .la sont utilisés respectivement par les programmes de"
1664
#~ " ImageMagick et openldap. Il peut y avoir d'autres exceptions avec des "
7620 jlepiller 1665
#~ "paquets qui ne sont pas dans BLFS."