|
| 1 | +# SOME DESCRIPTIVE TITLE. |
| 2 | +# Copyright (C) 2001-2021, Python Software Foundation |
| 3 | +# This file is distributed under the same license as the Python package. |
| 4 | +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. |
| 5 | +# |
| 6 | +# Translators: |
| 7 | +# Chris Abramowicz, 2022 |
| 8 | +# |
| 9 | +#, fuzzy |
| 10 | +msgid "" |
| 11 | +msgstr "" |
| 12 | +"Project-Id-Version: Python 3.9\n" |
| 13 | +"Report-Msgid-Bugs-To: \n" |
| 14 | +"POT-Creation-Date: 2021-01-01 05:02+0000\n" |
| 15 | +"PO-Revision-Date: 2017-02-16 17:42+0000\n" |
| 16 | +"Last-Translator: Chris Abramowicz, 2022\n" |
| 17 | +"Language-Team: Polish (https://www.transifex.com/python-doc/teams/5390/pl/)\n" |
| 18 | +"MIME-Version: 1.0\n" |
| 19 | +"Content-Type: text/plain; charset=UTF-8\n" |
| 20 | +"Content-Transfer-Encoding: 8bit\n" |
| 21 | +"Language: pl\n" |
| 22 | +"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n" |
| 23 | +"%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n" |
| 24 | +"%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n" |
| 25 | + |
| 26 | +msgid "Building C and C++ Extensions on Windows" |
| 27 | +msgstr "Tworzenie rozszerzeń C i C++ w Windowsie" |
| 28 | + |
| 29 | +msgid "" |
| 30 | +"This chapter briefly explains how to create a Windows extension module for " |
| 31 | +"Python using Microsoft Visual C++, and follows with more detailed background " |
| 32 | +"information on how it works. The explanatory material is useful for both " |
| 33 | +"the Windows programmer learning to build Python extensions and the Unix " |
| 34 | +"programmer interested in producing software which can be successfully built " |
| 35 | +"on both Unix and Windows." |
| 36 | +msgstr "" |
| 37 | + |
| 38 | +msgid "" |
| 39 | +"Module authors are encouraged to use the distutils approach for building " |
| 40 | +"extension modules, instead of the one described in this section. You will " |
| 41 | +"still need the C compiler that was used to build Python; typically Microsoft " |
| 42 | +"Visual C++." |
| 43 | +msgstr "" |
| 44 | + |
| 45 | +msgid "" |
| 46 | +"This chapter mentions a number of filenames that include an encoded Python " |
| 47 | +"version number. These filenames are represented with the version number " |
| 48 | +"shown as ``XY``; in practice, ``'X'`` will be the major version number and " |
| 49 | +"``'Y'`` will be the minor version number of the Python release you're " |
| 50 | +"working with. For example, if you are using Python 2.2.1, ``XY`` will " |
| 51 | +"actually be ``22``." |
| 52 | +msgstr "" |
| 53 | + |
| 54 | +msgid "A Cookbook Approach" |
| 55 | +msgstr "" |
| 56 | + |
| 57 | +msgid "" |
| 58 | +"There are two approaches to building extension modules on Windows, just as " |
| 59 | +"there are on Unix: use the :mod:`distutils` package to control the build " |
| 60 | +"process, or do things manually. The distutils approach works well for most " |
| 61 | +"extensions; documentation on using :mod:`distutils` to build and package " |
| 62 | +"extension modules is available in :ref:`distutils-index`. If you find you " |
| 63 | +"really need to do things manually, it may be instructive to study the " |
| 64 | +"project file for the :source:`winsound <PCbuild/winsound.vcxproj>` standard " |
| 65 | +"library module." |
| 66 | +msgstr "" |
| 67 | + |
| 68 | +msgid "Differences Between Unix and Windows" |
| 69 | +msgstr "Różnice pomiędzy Unixem a Windowsem" |
| 70 | + |
| 71 | +msgid "" |
| 72 | +"Unix and Windows use completely different paradigms for run-time loading of " |
| 73 | +"code. Before you try to build a module that can be dynamically loaded, be " |
| 74 | +"aware of how your system works." |
| 75 | +msgstr "" |
| 76 | + |
| 77 | +msgid "" |
| 78 | +"In Unix, a shared object (:file:`.so`) file contains code to be used by the " |
| 79 | +"program, and also the names of functions and data that it expects to find in " |
| 80 | +"the program. When the file is joined to the program, all references to " |
| 81 | +"those functions and data in the file's code are changed to point to the " |
| 82 | +"actual locations in the program where the functions and data are placed in " |
| 83 | +"memory. This is basically a link operation." |
| 84 | +msgstr "" |
| 85 | + |
| 86 | +msgid "" |
| 87 | +"In Windows, a dynamic-link library (:file:`.dll`) file has no dangling " |
| 88 | +"references. Instead, an access to functions or data goes through a lookup " |
| 89 | +"table. So the DLL code does not have to be fixed up at runtime to refer to " |
| 90 | +"the program's memory; instead, the code already uses the DLL's lookup table, " |
| 91 | +"and the lookup table is modified at runtime to point to the functions and " |
| 92 | +"data." |
| 93 | +msgstr "" |
| 94 | + |
| 95 | +msgid "" |
| 96 | +"In Unix, there is only one type of library file (:file:`.a`) which contains " |
| 97 | +"code from several object files (:file:`.o`). During the link step to create " |
| 98 | +"a shared object file (:file:`.so`), the linker may find that it doesn't know " |
| 99 | +"where an identifier is defined. The linker will look for it in the object " |
| 100 | +"files in the libraries; if it finds it, it will include all the code from " |
| 101 | +"that object file." |
| 102 | +msgstr "" |
| 103 | + |
| 104 | +msgid "" |
| 105 | +"In Windows, there are two types of library, a static library and an import " |
| 106 | +"library (both called :file:`.lib`). A static library is like a Unix :file:`." |
| 107 | +"a` file; it contains code to be included as necessary. An import library is " |
| 108 | +"basically used only to reassure the linker that a certain identifier is " |
| 109 | +"legal, and will be present in the program when the DLL is loaded. So the " |
| 110 | +"linker uses the information from the import library to build the lookup " |
| 111 | +"table for using identifiers that are not included in the DLL. When an " |
| 112 | +"application or a DLL is linked, an import library may be generated, which " |
| 113 | +"will need to be used for all future DLLs that depend on the symbols in the " |
| 114 | +"application or DLL." |
| 115 | +msgstr "" |
| 116 | + |
| 117 | +msgid "" |
| 118 | +"Suppose you are building two dynamic-load modules, B and C, which should " |
| 119 | +"share another block of code A. On Unix, you would *not* pass :file:`A.a` to " |
| 120 | +"the linker for :file:`B.so` and :file:`C.so`; that would cause it to be " |
| 121 | +"included twice, so that B and C would each have their own copy. In Windows, " |
| 122 | +"building :file:`A.dll` will also build :file:`A.lib`. You *do* pass :file:" |
| 123 | +"`A.lib` to the linker for B and C. :file:`A.lib` does not contain code; it " |
| 124 | +"just contains information which will be used at runtime to access A's code." |
| 125 | +msgstr "" |
| 126 | + |
| 127 | +msgid "" |
| 128 | +"In Windows, using an import library is sort of like using ``import spam``; " |
| 129 | +"it gives you access to spam's names, but does not create a separate copy. " |
| 130 | +"On Unix, linking with a library is more like ``from spam import *``; it does " |
| 131 | +"create a separate copy." |
| 132 | +msgstr "" |
| 133 | + |
| 134 | +msgid "Using DLLs in Practice" |
| 135 | +msgstr "" |
| 136 | + |
| 137 | +msgid "" |
| 138 | +"Windows Python is built in Microsoft Visual C++; using other compilers may " |
| 139 | +"or may not work (though Borland seems to). The rest of this section is MSVC+" |
| 140 | +"+ specific." |
| 141 | +msgstr "" |
| 142 | + |
| 143 | +msgid "" |
| 144 | +"When creating DLLs in Windows, you must pass :file:`pythonXY.lib` to the " |
| 145 | +"linker. To build two DLLs, spam and ni (which uses C functions found in " |
| 146 | +"spam), you could use these commands::" |
| 147 | +msgstr "" |
| 148 | + |
| 149 | +msgid "" |
| 150 | +"The first command created three files: :file:`spam.obj`, :file:`spam.dll` " |
| 151 | +"and :file:`spam.lib`. :file:`Spam.dll` does not contain any Python " |
| 152 | +"functions (such as :c:func:`PyArg_ParseTuple`), but it does know how to find " |
| 153 | +"the Python code thanks to :file:`pythonXY.lib`." |
| 154 | +msgstr "" |
| 155 | + |
| 156 | +msgid "" |
| 157 | +"The second command created :file:`ni.dll` (and :file:`.obj` and :file:`." |
| 158 | +"lib`), which knows how to find the necessary functions from spam, and also " |
| 159 | +"from the Python executable." |
| 160 | +msgstr "" |
| 161 | + |
| 162 | +msgid "" |
| 163 | +"Not every identifier is exported to the lookup table. If you want any other " |
| 164 | +"modules (including Python) to be able to see your identifiers, you have to " |
| 165 | +"say ``_declspec(dllexport)``, as in ``void _declspec(dllexport) " |
| 166 | +"initspam(void)`` or ``PyObject _declspec(dllexport) *NiGetSpamData(void)``." |
| 167 | +msgstr "" |
| 168 | + |
| 169 | +msgid "" |
| 170 | +"Developer Studio will throw in a lot of import libraries that you do not " |
| 171 | +"really need, adding about 100K to your executable. To get rid of them, use " |
| 172 | +"the Project Settings dialog, Link tab, to specify *ignore default " |
| 173 | +"libraries*. Add the correct :file:`msvcrtxx.lib` to the list of libraries." |
| 174 | +msgstr "" |
0 commit comments