Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork27
Expand file tree
/
Copy pathid.po
More file actions
255 lines (227 loc) · 10.4 KB
/
id.po
File metadata and controls
255 lines (227 loc) · 10.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2001 Python Software Foundation
# This file is distributed under the same license as the Python package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
# Translators:
# Elmo <work.elmoallistair@gmail.com>, 2021
#
#,fuzzy
msgid ""
msgstr ""
"Project-Id-Version:Python 3.14\n"
"Report-Msgid-Bugs-To:\n"
"POT-Creation-Date:2025-05-09 14:19+0000\n"
"PO-Revision-Date:2021-06-28 00:52+0000\n"
"Last-Translator:Elmo <work.elmoallistair@gmail.com>, 2021\n"
"Language-Team:Indonesian (https://app.transifex.com/python-doc/teams/5390/id/)\n"
"MIME-Version:1.0\n"
"Content-Type:text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding:8bit\n"
"Language:id\n"
"Plural-Forms:nplurals=1; plural=0;\n"
#:../../extending/windows.rst:8
msgid"Building C and C++ Extensions on Windows"
msgstr"Membangun Ekstensi C dan C++ di Windows"
#:../../extending/windows.rst:10
msgid""
"This chapter briefly explains how to create a Windows extension module for "
"Python using Microsoft Visual C++, and follows with more detailed background"
" information on how it works. The explanatory material is useful for both "
"the Windows programmer learning to build Python extensions and the Unix "
"programmer interested in producing software which can be successfully built "
"on both Unix and Windows."
msgstr""
"Bab ini menjelaskan secara singkat cara membuat modul ekstensi Windows untuk"
" Python menggunakan Microsoft Visual C++, dan diikuti dengan informasi latar"
" belakang yang lebih rinci tentang cara kerjanya. Materi penjelasan berguna "
"untuk pemrogram Windows yang belajar membuat ekstensi Python dan pemrogram "
"Unix yang tertarik untuk memproduksi perangkat lunak yang dapat dibangun di "
"Unix dan Windows."
#:../../extending/windows.rst:17
msgid""
"Module authors are encouraged to use the distutils approach for building "
"extension modules, instead of the one described in this section. You will "
"still need the C compiler that was used to build Python; typically Microsoft"
" Visual C++."
msgstr""
"Penulis modul didorong untuk menggunakan pendekatan distutil untuk membangun"
" modul ekstensi, daripada yang dijelaskan di bagian ini. Anda masih "
"memerlukan kompiler C yang digunakan untuk membangun Python; biasanya "
"Microsoft Visual C++."
#:../../extending/windows.rst:24
msgid""
"This chapter mentions a number of filenames that include an encoded Python "
"version number. These filenames are represented with the version number "
"shown as ``XY``; in practice, ``'X'`` will be the major version number and "
"``'Y'`` will be the minor version number of the Python release you're "
"working with. For example, if you are using Python 2.2.1, ``XY`` will "
"actually be ``22``."
msgstr""
"Bab ini menyebutkan sejumlah nama file yang menyertakan nomor versi Python "
"yang disandikan. Nama file ini diwakili dengan nomor versi yang ditampilkan "
"sebagai ``XY``; dalam praktiknya, ``'X'`` akan menjadi nomor versi utama dan"
" ``'Y'`` akan menjadi nomor versi minor dari rilis Python yang sedang Anda "
"kerjakan. Misalnya, jika Anda menggunakan Python 2.2.1, ``XY`` sebenarnya "
"akan menjadi ``22``."
#:../../extending/windows.rst:34
msgid"A Cookbook Approach"
msgstr""
#:../../extending/windows.rst:36
msgid""
"There are two approaches to building extension modules on Windows, just as "
"there are on Unix: use the ``setuptools`` package to control the build "
"process, or do things manually. The setuptools approach works well for most"
" extensions; documentation on using ``setuptools`` to build and package "
"extension modules is available in :ref:`setuptools-index`. If you find you "
"really need to do things manually, it may be instructive to study the "
"project file for the :source:`winsound <PCbuild/winsound.vcxproj>` standard "
"library module."
msgstr""
#:../../extending/windows.rst:48
msgid"Differences Between Unix and Windows"
msgstr""
#:../../extending/windows.rst:53
msgid""
"Unix and Windows use completely different paradigms for run-time loading of "
"code. Before you try to build a module that can be dynamically loaded, be "
"aware of how your system works."
msgstr""
#:../../extending/windows.rst:57
msgid""
"In Unix, a shared object (:file:`.so`) file contains code to be used by the "
"program, and also the names of functions and data that it expects to find in"
" the program. When the file is joined to the program, all references to "
"those functions and data in the file's code are changed to point to the "
"actual locations in the program where the functions and data are placed in "
"memory. This is basically a link operation."
msgstr""
#:../../extending/windows.rst:64
msgid""
"In Windows, a dynamic-link library (:file:`.dll`) file has no dangling "
"references. Instead, an access to functions or data goes through a lookup "
"table. So the DLL code does not have to be fixed up at runtime to refer to "
"the program's memory; instead, the code already uses the DLL's lookup table,"
" and the lookup table is modified at runtime to point to the functions and "
"data."
msgstr""
#:../../extending/windows.rst:70
msgid""
"In Unix, there is only one type of library file (:file:`.a`) which contains "
"code from several object files (:file:`.o`). During the link step to create"
" a shared object file (:file:`.so`), the linker may find that it doesn't "
"know where an identifier is defined. The linker will look for it in the "
"object files in the libraries; if it finds it, it will include all the code "
"from that object file."
msgstr""
#:../../extending/windows.rst:76
msgid""
"In Windows, there are two types of library, a static library and an import "
"library (both called :file:`.lib`). A static library is like a Unix "
":file:`.a` file; it contains code to be included as necessary. An import "
"library is basically used only to reassure the linker that a certain "
"identifier is legal, and will be present in the program when the DLL is "
"loaded. So the linker uses the information from the import library to build"
" the lookup table for using identifiers that are not included in the DLL. "
"When an application or a DLL is linked, an import library may be generated, "
"which will need to be used for all future DLLs that depend on the symbols in"
" the application or DLL."
msgstr""
#:../../extending/windows.rst:86
msgid""
"Suppose you are building two dynamic-load modules, B and C, which should "
"share another block of code A. On Unix, you would *not* pass :file:`A.a` to"
" the linker for :file:`B.so` and :file:`C.so`; that would cause it to be "
"included twice, so that B and C would each have their own copy. In Windows,"
" building :file:`A.dll` will also build :file:`A.lib`. You *do* pass "
":file:`A.lib` to the linker for B and C. :file:`A.lib` does not contain "
"code; it just contains information which will be used at runtime to access "
"A's code."
msgstr""
#:../../extending/windows.rst:94
msgid""
"In Windows, using an import library is sort of like using ``import spam``; "
"it gives you access to spam's names, but does not create a separate copy. "
"On Unix, linking with a library is more like ``from spam import *``; it does"
" create a separate copy."
msgstr""
#:../../extending/windows.rst:101
msgid""
"Turn off the implicit, ``#pragma``-based linkage with the Python library, "
"performed inside CPython header files."
msgstr""
#:../../extending/windows.rst:110
msgid"Using DLLs in Practice"
msgstr""
#:../../extending/windows.rst:115
msgid""
"Windows Python is built in Microsoft Visual C++; using other compilers may "
"or may not work. The rest of this section is MSVC++ specific."
msgstr""
#:../../extending/windows.rst:118
msgid""
"When creating DLLs in Windows, you can use the CPython library in two ways:"
msgstr""
#:../../extending/windows.rst:120
msgid""
"By default, inclusion of :file:`PC/pyconfig.h` directly or via "
":file:`Python.h` triggers an implicit, configure-aware link with the "
"library. The header file chooses :file:`pythonXY_d.lib` for Debug, "
":file:`pythonXY.lib` for Release, and :file:`pythonX.lib` for Release with "
"the `Limited API <stable-application-binary-interface>`_ enabled."
msgstr""
#:../../extending/windows.rst:126../../extending/windows.rst:144
msgid""
"To build two DLLs, spam and ni (which uses C functions found in spam), you "
"could use these commands::"
msgstr""
#:../../extending/windows.rst:129
msgid""
"cl /LD /I/python/include spam.c\n"
"cl /LD /I/python/include ni.c spam.lib"
msgstr""
#:../../extending/windows.rst:132
msgid""
"The first command created three files: :file:`spam.obj`, :file:`spam.dll` "
"and :file:`spam.lib`. :file:`Spam.dll` does not contain any Python "
"functions (such as :c:func:`PyArg_ParseTuple`), but it does know how to find"
" the Python code thanks to the implicitly linked :file:`pythonXY.lib`."
msgstr""
#:../../extending/windows.rst:137../../extending/windows.rst:155
msgid""
"The second command created :file:`ni.dll` (and :file:`.obj` and "
":file:`.lib`), which knows how to find the necessary functions from spam, "
"and also from the Python executable."
msgstr""
#:../../extending/windows.rst:141
msgid""
"Manually by defining :c:macro:`Py_NO_LINK_LIB` macro before including "
":file:`Python.h`. You must pass :file:`pythonXY.lib` to the linker."
msgstr""
#:../../extending/windows.rst:147
msgid""
"cl /LD /DPy_NO_LINK_LIB /I/python/include spam.c ../libs/pythonXY.lib\n"
"cl /LD /DPy_NO_LINK_LIB /I/python/include ni.c spam.lib ../libs/pythonXY.lib"
msgstr""
#:../../extending/windows.rst:150
msgid""
"The first command created three files: :file:`spam.obj`, :file:`spam.dll` "
"and :file:`spam.lib`. :file:`Spam.dll` does not contain any Python "
"functions (such as :c:func:`PyArg_ParseTuple`), but it does know how to find"
" the Python code thanks to :file:`pythonXY.lib`."
msgstr""
#:../../extending/windows.rst:159
msgid""
"Not every identifier is exported to the lookup table. If you want any other"
" modules (including Python) to be able to see your identifiers, you have to "
"say ``_declspec(dllexport)``, as in ``void _declspec(dllexport) "
"initspam(void)`` or ``PyObject _declspec(dllexport) *NiGetSpamData(void)``."
msgstr""
#:../../extending/windows.rst:164
msgid""
"Developer Studio will throw in a lot of import libraries that you do not "
"really need, adding about 100K to your executable. To get rid of them, use "
"the Project Settings dialog, Link tab, to specify *ignore default "
"libraries*. Add the correct :file:`msvcrt{xx}.lib` to the list of "
"libraries."
msgstr""