@@ -76,6 +76,15 @@ msgid ""
76
76
"distutils documentation in :ref:`distutils-index` to learn more about the "
77
77
"features of distutils; this section explains building extension modules only."
78
78
msgstr ""
79
+ "Dans le fichier :file:`setup.py`, tout est exécuté en appelant la fonction "
80
+ "``setup``. Elle prend une quantité variable d'arguments nommés, l'exemple "
81
+ "précédent n'en utilisant qu'une partie. L'exemple précise des méta-"
82
+ "informations pour construire les paquets, et définir le contenu du paquet. "
83
+ "Normalement un paquet contient des modules additionnels, comme des modules "
84
+ "sources, documentation, sous paquets, etc. Referez-vous à la documentation "
85
+ "de distutils dans :ref:`distutils-index` pour en apprendre plus sur les "
86
+ "fonctionnalités de distutils. Cette section n'explique que la construction "
87
+ "de modules d'extension."
79
88
80
89
#: extending/building.rst:58
81
90
msgid ""
@@ -86,6 +95,12 @@ msgid ""
86
95
"defines an extension named ``demo`` which is build by compiling a single "
87
96
"source file, :file:`demo.c`."
88
97
msgstr ""
98
+ "Il est classique de pré-construire les arguments de :func:`setup`, pour "
99
+ "mieux structurer le script pilote. Dans l'exemple précédent, l'argument "
100
+ "``ext_modules`` donné à :func:`setup` est une liste de modules d'extension, "
101
+ "dont chacun est une instance de :class:`~distutils.extension.Extension`. "
102
+ "Dans l'exemple, l'instance défini une extension nommée ``demo`` qui est "
103
+ "construite en compilant un seul fichier source, :file:`demo.c`."
89
104
90
105
#: extending/building.rst:65
91
106
msgid ""
@@ -106,6 +121,13 @@ msgid ""
106
121
"passes this information in different ways to the compiler. For example, on "
107
122
"Unix, this may result in the compilation commands ::"
108
123
msgstr ""
124
+ "Dans cet exemple, :func:`setup` est appelée avec des méta-informations "
125
+ "supplémentaires, ce qui est recommandé lorsque le paquet est amené à être "
126
+ "distribué. Pour l'extension elle même, elle donne des variables de "
127
+ "préprocesseur (*defines*), dossiers de bibliothèques, et bibliothèques. En "
128
+ "fonction du compilateur distutils peut lui donner ces informations de "
129
+ "différentes manières, par exemple, sur Linux, on pourrait obtenir cette "
130
+ "ligne ::"
109
131
110
132
#: extending/building.rst:102
111
133
msgid ""
@@ -177,6 +199,15 @@ msgid ""
177
199
"writing some scripts in Python. You can also use it yourself if some of the "
178
200
"functionality can be written in Python more easily."
179
201
msgstr ""
202
+ "Les chapitres précédents couvraient l'extension de Python, c'est à dire, "
203
+ "comment enrichir une fonctionnalité de Python en y attachant une "
204
+ "bibliothèque de fonctions C. C'est aussi possible dans l'autre sens: "
205
+ "enrichir vos applications C/C++ en y intégrant Python. Intégrer Python vous "
206
+ "permet d'implémenter certaines fonctionnalités de vos applications en Python "
207
+ "plutôt qu'en C ou C++. C'est utile dans de nombreux cas, un exemple serait "
208
+ "de permettre aux utilisateurs d'adapter une application à leur besoins en y "
209
+ "écrivant des scripts Python. Vous pouvez aussi l'utiliser vous même si "
210
+ "certaines fonctionnalités peuvent être rédigées plus facilement en Python."
180
211
181
212
#: extending/embedding.rst:20
182
213
msgid ""
@@ -186,6 +217,11 @@ msgid ""
186
217
"nothing to do with Python --- instead, some parts of the application "
187
218
"occasionally call the Python interpreter to run some Python code."
188
219
msgstr ""
220
+ "Intégrer et étendre Python sont des tâches presque identiques. La différence "
221
+ "est qu'en étendant Python, le programme principal reste l'interpréteur "
222
+ "Python, alors qu'en intégrant Python le programme principal peut ne rien à "
223
+ "voir avec Python. C'est simplement quelques parties du programme qui "
224
+ "appellent l'interprète Python pour exécuter un peu de code Python."
189
225
190
226
# 3349405bb5884228afac17315062a7b3
191
227
#: extending/embedding.rst:26
@@ -197,6 +233,11 @@ msgid ""
197
233
"Python. Then later you can call the interpreter from any part of the "
198
234
"application."
199
235
msgstr ""
236
+ "En intégrant Python, vous fournissez le programme principal. L'une de ses "
237
+ "tâches sera d'initialiser l'interpréteur. Au minimum vous devrez appeler :c:"
238
+ "func:`Py_Initialize`. Il est possible, avec quelques appels supplémentaires, "
239
+ "de passer des options à Python. Ensuite vous pourrez appeler l'interpréteur "
240
+ "depuis n'importe quelle partie de votre programme."
200
241
201
242
# 2fee2b21444c48fcbc33bf615faa320a
202
243
#: extending/embedding.rst:32
@@ -208,6 +249,12 @@ msgid ""
208
249
"level operations described in the previous chapters to construct and use "
209
250
"Python objects."
210
251
msgstr ""
252
+ "Il existe différents moyens d'appeler l'interpréteur: vous pouvez donner une "
253
+ "chaîne contenant des instructions Python à :c:func:`PyRun_SimpleString`, ou "
254
+ "vous pouvez donner un pointeur de fichier *stdio* et un nom de fichier "
255
+ "(juste pour nommer les messages d'erreur) à :c:func:`PyRunSimpleFile`. Vous "
256
+ "pouvez aussi appeler les API de bas niveau décrites dans les chapitres "
257
+ "précédents pour construire et utiliser des objets Python."
211
258
212
259
#: extending/embedding.rst:38
213
260
msgid ""
@@ -433,10 +480,13 @@ msgid ""
433
480
"reference to the return value of the function. Be sure to release the "
434
481
"reference after examining the value."
435
482
msgstr ""
483
+ "Après l'exécution de la fonction, ``pValue`` est soit *NULL*, soit une "
484
+ "référence sur la valeur donnée par la fonction. Assurez-vous de libérer la "
485
+ "référence après avoir utilisé la valeur."
436
486
437
487
#: extending/embedding.rst:198
438
488
msgid "Extending Embedded Python"
439
- msgstr ""
489
+ msgstr "Étendre un Python Intégré "
440
490
441
491
#: extending/embedding.rst:200
442
492
msgid ""
@@ -464,16 +514,21 @@ msgid ""
464
514
"numargs` function accessible to the embedded Python interpreter. With these "
465
515
"extensions, the Python script can do things like"
466
516
msgstr ""
517
+ "Ces deux lignes initialisent la variable ``numarg``, et rend la fonction :"
518
+ "func:`emb.numargs` accessible à l'interprète intégré. Avec ces ajouts, le "
519
+ "script Python petit maintenant faire des choses comme"
467
520
468
521
#: extending/embedding.rst:241
469
522
msgid ""
470
523
"In a real application, the methods will expose an API of the application to "
471
524
"Python."
472
525
msgstr ""
526
+ "Dans un cas réel, les méthodes exposeraient une API de l'application a "
527
+ "Python."
473
528
474
529
#: extending/embedding.rst:251
475
530
msgid "Embedding Python in C++"
476
- msgstr ""
531
+ msgstr "Intégrer Python dans du C++ "
477
532
478
533
#: extending/embedding.rst:253
479
534
msgid ""
@@ -483,11 +538,16 @@ msgid ""
483
538
"and link your program. There is no need to recompile Python itself using C+"
484
539
"+."
485
540
msgstr ""
541
+ "Il est aussi possible d'intégrer Python dans un programme en C++, la manière "
542
+ "exacte dont cela se fait dépend de détails du système C++ utilisé. En "
543
+ "général vous écrirez le programme principal en C++, utiliserez un "
544
+ "compilateur C++ pour compiler et lier votre programme. Il n'y a pas besoin "
545
+ "de recompiler Python en utilisant C++."
486
546
487
547
# 44dca6105a3242e290f38c806b5809c8
488
548
#: extending/embedding.rst:262
489
549
msgid "Compiling and Linking under Unix-like systems"
490
- msgstr ""
550
+ msgstr "Compiler et Lier en environnement Unix ou similaire "
491
551
492
552
# 93ed4ba539024e3b8dcb225629991679
493
553
#: extending/embedding.rst:264
@@ -497,6 +557,10 @@ msgid ""
497
557
"application, particularly because Python needs to load library modules "
498
558
"implemented as C dynamic extensions (:file:`.so` files) linked against it."
499
559
msgstr ""
560
+ "Ce n'est pas évident de trouver les bonnes options à passer au compilateur "
561
+ "(et *linker*) pour intégrer l'interpréteur Python dans une application, "
562
+ "Python ayant besoin de charger des extensions sous forme de bibliothèques "
563
+ "dynamiques en C (des :file:`.so`) pour se lier avec."
500
564
501
565
# 8b508760472948ada9ab32e38a8344ed
502
566
#: extending/embedding.rst:270
@@ -514,13 +578,17 @@ msgid ""
514
578
"``pythonX.Y-config --cflags`` will give you the recommended flags when "
515
579
"compiling::"
516
580
msgstr ""
581
+ "``pythonX.Y-config --cflags`` vous donnera les options recommandés pour "
582
+ "compiler ::"
517
583
518
584
# 430001bf3ed8482d91eba2ea79d6599f
519
585
#: extending/embedding.rst:282
520
586
msgid ""
521
587
"``pythonX.Y-config --ldflags`` will give you the recommended flags when "
522
588
"linking::"
523
589
msgstr ""
590
+ "``pythonX.Y-config --ldflags`` vous donnera les options recommandées pour "
591
+ "lier ::"
524
592
525
593
# 2994040c1726440e9a01b2815a263040
526
594
#: extending/embedding.rst:289
@@ -530,6 +598,10 @@ msgid ""
530
598
"that you use the absolute path to :file:`python{X.Y}-config`, as in the "
531
599
"above example."
532
600
msgstr ""
601
+ "Pour éviter la confusion entre différentes installations de Python, (et plus "
602
+ "spécialement entre celle de votre système et votre version compilée), il est "
603
+ "recommandé d'utiliser un chemin absolu vers :file:`python{X.Y}-config`, "
604
+ "comme dans l'exemple précédent."
533
605
534
606
# 7201c9d013124418a95e2f84ee53db55
535
607
#: extending/embedding.rst:294
@@ -546,7 +618,7 @@ msgstr ""
546
618
547
619
#: extending/extending.rst:8
548
620
msgid "Extending Python with C or C++"
549
- msgstr ""
621
+ msgstr "Étendre Python en C ou C++ "
550
622
551
623
#: extending/extending.rst:10
552
624
msgid ""
@@ -555,6 +627,11 @@ msgid ""
555
627
"done directly in Python: they can implement new built-in object types, and "
556
628
"they can call C library functions and system calls."
557
629
msgstr ""
630
+ "Il est relativement facile d'ajouter de nouveaux modules à Python, si vous "
631
+ "savez programmer en C. Ces :dfn:`<modules d'extension> extension modules` "
632
+ "permettent deux choses qui ne sont pas possible directement en Python: Elles "
633
+ "peuvent définir de nouveaux types natifs, et peuvent appeler des fonctions "
634
+ "de bibliothèques C ou appels systèmes."
558
635
559
636
#: extending/extending.rst:15
560
637
msgid ""
0 commit comments