# Polish translation of manpages # This file is distributed under the same license as the manpages-l10n package. # Copyright © of this file: # Przemek Borys , 1998. # Andrzej Krzysztofowicz , 2002. # Michał Kułach , 2024. msgid "" msgstr "" "Project-Id-Version: manpages-l10n\n" "POT-Creation-Date: 2024-06-01 05:47+0200\n" "PO-Revision-Date: 2024-04-15 21:59+0200\n" "Last-Translator: Michał Kułach \n" "Language-Team: Polish \n" "Language: pl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2);\n" "X-Generator: Lokalize 22.12.3\n" #. type: TH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "dlopen" msgstr "dlopen" #. type: TH #: archlinux debian-unstable opensuse-tumbleweed #, no-wrap msgid "2024-05-02" msgstr "2 maja 2024 r." #. type: TH #: archlinux debian-unstable #, no-wrap msgid "Linux man-pages 6.8" msgstr "Linux man-pages 6.8" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "NAME" msgstr "NAZWA" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "dlclose, dlopen, dlmopen - open and close a shared object" msgstr "dlclose, dlopen, dlmopen - otwiera i zamyka obiekt dzielony" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "LIBRARY" msgstr "BIBLIOTEKA" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Dynamic linking library (I, I<-ldl>)" msgstr "Biblioteka konsolidacji dynamicznej (I, I<-ldl>)" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "SYNOPSIS" msgstr "SKŁADNIA" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B<#include Edlfcn.hE>\n" msgstr "B<#include Edlfcn.hE>\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "BIB<, int >IB<);>\n" "BIB<);>\n" msgstr "" "BIB<, int >IB<);>\n" "BIB<);>\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B<#define _GNU_SOURCE>\n" msgstr "B<#define _GNU_SOURCE>\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BIB<, const char *>IB<, int >IB<);>\n" msgstr "BIB<, const char *>IB<, int >IB<);>\n" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "DESCRIPTION" msgstr "OPIS" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "dlopen()" msgstr "dlopen()" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The function B() loads the dynamic shared object (shared library) " "file named by the null-terminated string I and returns an opaque " "\"handle\" for the loaded object. This handle is employed with other " "functions in the dlopen API, such as B(3), B(3), " "B(3), and B()." msgstr "" "Funkcja B() ładuje dynamiczny obiekt dzielony (bibliotekę dzieloną) " "pliku, o nazwie zawartej w zakończonym znakiem nul łańcuchu I i " "zwraca nieprzezroczysty \\[Bq]uchwyt\\[rq] dla tego obiektu dzielonego. " "Uchwytu tego używa się z innymi funkcjami z API dlopen, takimi jak " "B(3), B(3), B(3) i B()." #. FIXME On Solaris, when handle is NULL, we seem to get back #. a handle for (something like) the root of the namespace. #. The point here is that if we do a dlmopen(LM_ID_NEWLM), then #. the filename==NULL case returns a different handle than #. in the initial namespace. But, on glibc, the same handle is #. returned. This is probably a bug in glibc. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If I is NULL, then the returned handle is for the main program. " "If I contains a slash (\"/\"), then it is interpreted as a " "(relative or absolute) pathname. Otherwise, the dynamic linker searches for " "the object as follows (see B(8) for further details):" msgstr "" "Jeśli I wynosi NULL, to zwracany jest uchwyt do głównego programu. " "Jeśli I zawiera ukośnik (\\[Bq]/\\[rq]), to jest interpretowana " "jako (względna lub absolutna) ścieżka. W innych sytuacjach, konsolidator " "dynamiczny szuka obiektu w następujący sposób (więcej szczegółów w " "podręczniku B(8)):" #. type: IP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "\\[bu]" msgstr "\\[bu]" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(ELF only) If the calling object (i.e., the shared library or executable " "from which B() is called) contains a DT_RPATH tag, and does not " "contain a DT_RUNPATH tag, then the directories listed in the DT_RPATH tag " "are searched." msgstr "" "(tylko ELF) Jeśli wywołujący obiekt (tj. biblioteka współdzielona, lub plik " "wykonywalny, z którego wywoływane jest B()) zawiera znacznik " "DT_RPATH, natomiast nie zawiera znacznika DT_RUNPATH, to przeszukiwane są " "katalogi wypisane w znaczniku DT_RPATH." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If, at the time that the program was started, the environment variable " "B was defined to contain a colon-separated list of " "directories, then these are searched. (As a security measure, this variable " "is ignored for set-user-ID and set-group-ID programs.)" msgstr "" "Jeśli, w momencie uruchomienia tego programu, zdefiniowano zmienną " "środowiskową B i zawierała ona listę katalogów " "rozdzielonych dwukropkiem, to przeszukiwane są te katalogi (ze względów " "bezpieczeństwa, zmienna ta jest ignorowana w przypadku programów z " "ustawionym bitem set-user-ID lub set-group-ID)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(ELF only) If the calling object contains a DT_RUNPATH tag, then the " "directories listed in that tag are searched." msgstr "" "(tylko ELF) Jeśli wywołujący obiekt zawiera znacznik DT_RUNPATH, to " "przeszukiwane są katalogi wypisane w tym znaczniku." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The cache file I (maintained by B(8)) is " "checked to see whether it contains an entry for I." msgstr "" "Sprawdzany jest plik bufora I (zarządzany przez " "B(8)) pod kątem zawierania wpisu dla I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The directories I and I are searched (in that order)." msgstr "Przeszukiwane są katalogi I i I (w tej kolejności)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the object specified by I has dependencies on other shared " "objects, then these are also automatically loaded by the dynamic linker " "using the same rules. (This process may occur recursively, if those objects " "in turn have dependencies, and so on.)" msgstr "" "Jeśli obiekt określony w I ma zależności od innych obiektów " "dzielonych, są one również automatycznie ładowane przez konsolidator " "dynamiczny, za pomocą tych samych reguł (proces ten może postępować " "rekurencyjnie, jeśli te obiekty mają z kolei swoje zależności itd.)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "One of the following two values must be included in I:" msgstr "We I należy podać jedną z dwóch poniższych wartości:" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. commit 12b5b6b7f78ea111e89bbf638294a5413c791072 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Perform lazy binding. Resolve symbols only as the code that references them " "is executed. If the symbol is never referenced, then it is never resolved. " "(Lazy binding is performed only for function references; references to " "variables are always immediately bound when the shared object is loaded.) " "Since glibc 2.1.1, this flag is overridden by the effect of the " "B environment variable." msgstr "" "Przeprowadza leniwe dowiązanie. Rozwiązuje symbole jedynie wtedy, gdy " "wykonywany jest kod, który się do nich odnosi. Jeśli do danego symbolu nic " "się nie odniesie, to nie zostanie nigdy rozwiązany (leniwe dowiązanie jest " "wykonywane tylko przy odniesieniach do funkcji; odniesienia do zmiennych są " "zawsze bezzwłocznie przypisywane przy ładowaniu obiektu dzielonego). Od " "glibc 2.1.1, znacznik ten jest przesłaniany przez efekt zmiennej " "środowiskowej B." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If this value is specified, or the environment variable B is " "set to a nonempty string, all undefined symbols in the shared object are " "resolved before B() returns. If this cannot be done, an error is " "returned." msgstr "" "Jeśli poda się tę wartość lub zmienna środowiskowa B jest " "ustawiona na niepusty łańcuch, wszystkie niezdefiniowane symbole obiektu " "dzielonego są rozwiązywane przed powrotem B(). Jeśli nie da się tego " "wykonać, zwracany jest błąd." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Zero or more of the following values may also be ORed in I:" msgstr "" "Ponadto, we I można zsumować (OR) zero lub więcej z poniższych " "wartości:" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The symbols defined by this shared object will be made available for symbol " "resolution of subsequently loaded shared objects." msgstr "" "Symbole zdefiniowane za pomocą tego obiektu dzielonego zostaną udostępnione " "do rozwiązywania symboli kolejno ładowanych obiektów dzielonych." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This is the converse of B, and the default if neither flag is " "specified. Symbols defined in this shared object are not made available to " "resolve references in subsequently loaded shared objects." msgstr "" "Jest to odwrotność B, a także wartość domyślna, jeśli nie " "podano żadnego znacznika. Symbole zdefiniowane w tym obiekcie dzielonym nie " "są udostępniane do rozwiązywania symboli kolejno ładowanych obiektów " "dzielonych." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since glibc 2.2)" msgstr "B (od glibc 2.2)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Do not unload the shared object during B(). Consequently, the " "object's static and global variables are not reinitialized if the object is " "reloaded with B() at a later time." msgstr "" "Nie odłącza obiektu dzielonego podczas B(). Statyczne i globalne " "zmienne obiektu nie są zatem inicjowane ponownie, jeśli obiekt zostanie " "później przeładowany za pomocą B()." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since glibc 2.2)" msgstr "B (od glibc 2.2)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Don't load the shared object. This can be used to test if the object is " "already resident (B() returns NULL if it is not, or the object's " "handle if it is resident). This flag can also be used to promote the flags " "on a shared object that is already loaded. For example, a shared object " "that was previously loaded with B can be reopened with " "B." msgstr "" "Nie ładuje obiektu dzielonego. Można to wykorzystać do sprawdzenia, czy " "obiekt jest już rezydentny (B() zwróci NULL jeśli nie jest, albo " "uchwyt obiektu jeśli jest). Znacznik może posłużyć również do dodania " "znaczników do już załadowanego obiektu dzielonego. Przykładowo, wcześniej " "załadowany obiekt dzielony ze znacznikiem B może być otwarty " "ponownie z B." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since glibc 2.3.4)" msgstr "B (od glibc 2.3.4)" #. Inimitably described by UD in #. http://sources.redhat.com/ml/libc-hacker/2004-09/msg00083.html. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Place the lookup scope of the symbols in this shared object ahead of the " "global scope. This means that a self-contained object will use its own " "symbols in preference to global symbols with the same name contained in " "objects that have already been loaded." msgstr "" "Umieszcza dziedzinę przeszukiwania dla symboli, w tym obiekcie dzielonym " "przed dziedziną globalną. Oznacza to, że samodzielny obiekt będzie " "preferował używanie swoich symboli, zamiast symboli globalnych o tej samej " "nazwie w obiektach, które zostały już załadowane." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If I is NULL, then the returned handle is for the main program. " "When given to B(3), this handle causes a search for a symbol in the " "main program, followed by all shared objects loaded at program startup, and " "then all shared objects loaded by B() with the flag B." msgstr "" "Jeśli I wynosi NULL, to zwracany jest uchwyt do głównego programu. " "Przy przekazaniu tego uchwytu do B(3), powoduje on wyszukiwanie " "symbolu w głównym programie, następnie we wszystkich obiektach dzielonych " "załadowanych przy rozruchu programu, a potem we wszystkich obiektach " "dzielonych załadowanych za pomocą B() ze znacznikiem B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Symbol references in the shared object are resolved using (in order): " "symbols in the link map of objects loaded for the main program and its " "dependencies; symbols in shared objects (and their dependencies) that were " "previously opened with B() using the B flag; and " "definitions in the shared object itself (and any dependencies that were " "loaded for that object)." msgstr "" "Odniesienia symboli w obiekcie dzielonym są rozwiązywane za pomocą (w tej " "kolejności): symboli w mapie linkowań obiektów załadowanych do głównego " "programu i jego zależności; symboli w obiektach dzielonych (i ich " "zależności), które były uprzednio otworzone za pomocą B() i " "znacznika B; definicji w samym obiekcie dzielonym (i " "zależności, które zostały załadowane dla tego obiektu)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Any global symbols in the executable that were placed into its dynamic " "symbol table by B(1) can also be used to resolve references in a " "dynamically loaded shared object. Symbols may be placed in the dynamic " "symbol table either because the executable was linked with the flag \"-" "rdynamic\" (or, synonymously, \"--export-dynamic\"), which causes all of the " "executable's global symbols to be placed in the dynamic symbol table, or " "because B(1) noted a dependency on a symbol in another object during " "static linking." msgstr "" "Wszelkie symbole globalne w pliku wykonywalnym, które zostały umieszczone w " "jego tablicy symboli dynamicznych przez B(1), mogą być użyte również do " "rozwiązywania odniesień w dynamicznie załadowanym obiekcie dzielonym. " "Symbole mogą być umieszczone w tablicy symboli dynamicznych albo ponieważ " "plik wykonywalny skonsolidowano z \\[Bq]-rdynamic\\[rq] (lub synonimicznie: " "z \\[Bq]--export-dynamic\\[rq]), co powoduje umieszczenie wszystkich symboli " "globalnych pliku wykonywalnego w tablicy symboli dynamicznych, albo z powodu " "odnotowania przez B(1) zależności od symbolu w innym obiekcie, podczas " "konsolidowania statycznego." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the same shared object is opened again with B(), the same object " "handle is returned. The dynamic linker maintains reference counts for " "object handles, so a dynamically loaded shared object is not deallocated " "until B() has been called on it as many times as B() has " "succeeded on it. Constructors (see below) are called only when the object " "is actually loaded into memory (i.e., when the reference count increases to " "1)." msgstr "" "Jeśli ten sam obiekt dzielony zostanie powtórnie otworzony za pomocą " "B(), to zwracany jest ten sam uchwyt obiektu. Dynamiczny " "konsolidator utrzymuje liczniki odniesień dla uchwytów obiektów, tak więc " "dynamicznie załadowany obiekt dzielony nie jest dealokowany, dopóki " "B() nie zostanie na nim wywołany tak wiele razy, jak udanie " "wywołano na nim B(). Konstruktory (zob. niżej) są wywoływane tylko " "wtedy, gdy obiekt jest faktycznie ładowany do pamięci (tj. gdy licznik " "odniesień wzrośnie do 1)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A subsequent B() call that loads the same shared object with " "B may force symbol resolution for a shared object earlier loaded " "with B. Similarly, an object that was previously opened with " "B can be promoted to B in a subsequent B()." msgstr "" "Kolejne wywołanie B(), ładujące ten sam obiekt za pomocą " "B, może wymusić rozwiązanie symbolu dla obiektu dzielonego " "wcześniej załadowanego za pomocą B. Podobnie, obiekt uprzednio " "załadowany za pomocą B może awansować na B w " "kolejnym wywołaniu B()." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "If B() fails for any reason, it returns NULL." msgstr "Jeśli B() z jakiegoś powodu zawiedzie, zwróci NULL." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "dlmopen()" msgstr "dlmopen()" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This function performs the same task as B()\\[em]the I and " "I arguments, as well as the return value, are the same, except for " "the differences noted below." msgstr "" "Funkcja ta wykonuje te same zadania co B() \\[em] argumenty " "I i I oraz wartości zwraca są takie same, z wyjątkiem " "różnic opisanych niżej." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B() function differs from B() primarily in that it " "accepts an additional argument, I, that specifies the link-map list " "(also referred to as a I) in which the shared object should be " "loaded. (By comparison, B() adds the dynamically loaded shared " "object to the same namespace as the shared object from which the " "B() call is made.) The I type is an opaque handle that " "refers to a namespace." msgstr "" "Funkcja B() różni się od B() głównie tym, że akceptuje " "dodatkowy argument, I, który określa listę map linkowań (link-map) (do " "której można odnosić się również jako I), w której obiekt " "dzielony powinien być załadowany (dla porównania, B() dodaje " "dynamicznie ładowany obiekt dzielony do tej samej przestrzeni nazw, jak " "obiekt dzielony, z którego wywołano B()). Typ I jest " "nieprzezroczystym uchwytem odnoszącym się do tej przestrzeni nazw." #. FIXME: Is using dlinfo() RTLD_DI_LMID the right technique? #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I argument is either the ID of an existing namespace (which can be " "obtained using the B(3) B request) or one of the " "following special values:" msgstr "" "Argument I jest albo identyfikatorem istniejącej przestrzeni nazw " "(który można pozyskać za pomocą żądania B B(3)) lub " "jedną z następujących wartości specjalnych:" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Load the shared object in the initial namespace (i.e., the application's " "namespace)." msgstr "" "Ładuje obiekt dzielony w pierwotnej przestrzeni nazw (tj. w przestrzeni nazw " "aplikacji)." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Create a new namespace and load the shared object in that namespace. The " "object must have been correctly linked to reference all of the other shared " "objects that it requires, since the new namespace is initially empty." msgstr "" "Tworzy nową przestrzeń nazw i ładuje w niej obiekt dzielony. Obiekt musi być " "prawidłowo skonsolidowany do odniesień wszystkich innych obiektów dzielonych " "jakich wymaga, ponieważ nowa przestrzeń nazw jest początkowo pusta." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If I is NULL, then the only permitted value for I is " "B." msgstr "" "Jeśli I wynosi NULL, to jedyną dopuszczalną wartością I jest " "B." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "dlclose()" msgstr "dlclose()" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The function B() decrements the reference count on the dynamically " "loaded shared object referred to by I." msgstr "" "Funkcja B() zmniejsza licznik odniesień na dynamicznie załadowanych " "obiektach, do których odnosi się I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the object's reference count drops to zero and no symbols in this object " "are required by other objects, then the object is unloaded after first " "calling any destructors defined for the object. (Symbols in this object " "might be required in another object because this object was opened with the " "B flag and one of its symbols satisfied a relocation in another " "object.)" msgstr "" "Jeśli licznik odniesień obiektu spadnie do zera, a żadne symbole w tym " "obiekcie nie są wymagane przez inne obiekty, obiekt ten jest odłączany po " "pierwszym wywołaniu dowolnych destruktorów zdefiniowanych dla obiektu " "(symbole w obiekcie mogą być wymagane przez inny obiekt, ponieważ otworzono " "go ze znacznikiem B, a jeden z jego symboli umożliwił relokację " "w innym obiekcie)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "All shared objects that were automatically loaded when B() was " "invoked on the object referred to by I are recursively closed in the " "same manner." msgstr "" "Wszystkie obiekty dzielone załadowane automatycznie, gdy B() " "przywołano na obiekcie, do którego odnosi się I, są rekurencyjnie " "zamykane w ten sam sposób." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A successful return from B() does not guarantee that the symbols " "associated with I are removed from the caller's address space. In " "addition to references resulting from explicit B() calls, a shared " "object may have been implicitly loaded (and reference counted) because of " "dependencies in other shared objects. Only when all references have been " "released can the shared object be removed from the address space." msgstr "" "Pomyślny powrót z B() nie gwarantuje, że symbole powiązane z " "I są usunięte z przestrzeni adresowej wywołującego. Oprócz odniesień " "wynikających z bezpośrednich wywołań B(), mogły zostać " "niebezpośrednio załadowane obiekty dzielone (i policzone odniesienia), ze " "względu na zależności w innych obiektach dzielonych. Tylko gdy wszystkie " "odniesienia zostały uwolnione, obiekt dzielony może być usunięty z " "przestrzeni adresowej." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "RETURN VALUE" msgstr "WARTOŚĆ ZWRACANA" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On success, B() and B() return a non-NULL handle for the " "loaded object. On error (file could not be found, was not readable, had the " "wrong format, or caused errors during loading), these functions return NULL." msgstr "" "W przypadku powodzenia, B() i B() zwracają uchwyt do " "ładowanego obiektu, niebędący NULL-em. W razie wystąpienia błędu (nie można " "znaleźć pliku, nie był odczytywalny, miał zły format lub spowodował błędy " "przy załadowaniu) funkcje te zwracają NULL." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On success, B() returns 0; on error, it returns a nonzero value." msgstr "" "W przypadku powodzenia, B() zwraca 0; w razie wystąpienia błędu, " "zwraca wartość niezerową." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Errors from these functions can be diagnosed using B(3)." msgstr "Błędy z opisywanych funkcji można diagnozować za pomocą B(3)." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ATTRIBUTES" msgstr "ATRYBUTY" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For an explanation of the terms used in this section, see B(7)." msgstr "" "Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku " "B(7)." #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Interface" msgstr "Interfejs" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Attribute" msgstr "Atrybut" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Value" msgstr "Wartość" #. type: tbl table #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid ".na\n" msgstr ".na\n" #. type: tbl table #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid ".nh\n" msgstr ".nh\n" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "B(),\n" "B(),\n" "B()" msgstr "" "B(),\n" "B(),\n" "B()" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Thread safety" msgstr "Bezpieczeństwo wątkowe" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "MT-Safe" msgstr "MT-bezpieczne" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "STANDARDS" msgstr "STANDARDY" #. type: TP #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B()" msgstr "B()" #. type: TQ #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B()" msgstr "B()" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "POSIX.1-2008." msgstr "POSIX.1-2008." #. type: TP #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B()" msgstr "B()" #. type: TQ #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: TQ #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "GNU." msgstr "GNU." #. type: TP #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "Solaris." msgstr "Solaris." #. type: SH #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "HISTORY" msgstr "HISTORIA" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "glibc 2.0. POSIX.1-2001." msgstr "glibc 2.0. POSIX.1-2001." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "glibc 2.3.4." msgstr "glibc 2.3.4." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "NOTES" msgstr "UWAGI" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "dlmopen() and namespaces" msgstr "dlmopen() i przestrzenie nazw" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A link-map list defines an isolated namespace for the resolution of symbols " "by the dynamic linker. Within a namespace, dependent shared objects are " "implicitly loaded according to the usual rules, and symbol references are " "likewise resolved according to the usual rules, but such resolution is " "confined to the definitions provided by the objects that have been " "(explicitly and implicitly) loaded into the namespace." msgstr "" "Lista map linków (link-map) definiuje izolowaną przestrzeń nazw do " "rozwiązywania symboli przez konsolidator dynamiczny. Wewnątrz przestrzeni " "nazw, zależny obiekt dzielony jest niebezpośrednio ładowany zgodnie ze " "zwykłymi regułami, a odniesienia do symboli są podobnie rozwiązywane zgodnie " "ze zwykłymi regułami, lecz rozwiązywanie to jest ograniczone do definicji " "zapewnionych przez obiekty, które zostały (bezpośrednio lub niebezpośrednio) " "załadowane do tej przestrzeni nazw." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B() function permits object-load isolation\\[em]the ability to " "load a shared object in a new namespace without exposing the rest of the " "application to the symbols made available by the new object. Note that the " "use of the B flag is not sufficient for this purpose, since it " "prevents a shared object's symbols from being available to I other " "shared object. In some cases, we may want to make the symbols provided by a " "dynamically loaded shared object available to (a subset of) other shared " "objects without exposing those symbols to the entire application. This can " "be achieved by using a separate namespace and the B flag." msgstr "" "Funkcja B() pozwala na izolację załadowań obiektów \\[em] możliwość " "załadowania obiektu dzielonego do nowej przestrzeni nazw, bez ujawniania " "reszcie aplikacji symboli udostępnionych przez nowy obiekt. Proszę zauważyć, " "że użycie znacznika B nie jest wystarczające do tego celu, " "ponieważ zapobiega ono udostępnieniu symboli obiektu dzielonego dla " "I innych obiektów dzielonych. W niektórych przypadkach, zachodzi " "potrzeba udostępnienia symboli zapewnionych przez dynamicznie załadowany " "obiekt dzielony dla (podzbioru) innych obiektów dzielonych, bez ujawniania " "tych symboli całej aplikacji. Można to uzyskać za pomocą oddzielnej " "przestrzeni nazw i znacznika B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B() function also can be used to provide better isolation than " "the B flag. In particular, shared objects loaded with " "B may be promoted to B if they are dependencies of " "another shared object loaded with B. Thus, B is " "insufficient to isolate a loaded shared object except in the (uncommon) " "case where one has explicit control over all shared object dependencies." msgstr "" "Funkcja B() może służyć również do zapewnienia lepszej izolacji, " "niż znacznik B. W szczególności, obiekty dzielone załadowane za " "pomocą B mogą być awansowane do B, jeśli są " "zależnościami innego obiektu dzielonego załadowanego ze znacznikiem " "B. Z tego względu, B jest niewystarczające do " "izolowania załadowanego obiektu dzielonego, z wyjątkiem (nieczęstej) " "sytuacji, gdy ma się całkowitą kontrolę nad wszystkich zależnościami obiektu " "dzielonego." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Possible uses of B() are plugins where the author of the plugin-" "loading framework can't trust the plugin authors and does not wish any " "undefined symbols from the plugin framework to be resolved to plugin " "symbols. Another use is to load the same object more than once. Without " "the use of B(), this would require the creation of distinct copies " "of the shared object file. Using B(), this can be achieved by " "loading the same shared object file into different namespaces." msgstr "" "Możliwe zastosowania B() to wtyczki, gdzie autor struktury " "ładowania wtyczek nie może ufać autorom wtyczek i nie chce, aby jakiekolwiek " "niezdefiniowane symbole ze struktury wtyczek były rozwiązywane do symboli " "wtyczek. Kolejne zastosowanie, to ładowanie tego samego obiektu więcej niż " "raz. Bez korzystania z B(), wymagałoby to utworzenia odrębnej kopii " "pliku obiektu dzielonego. Za pomocą B(), można to uzyskać ładując " "ten sam plik obiektu dzielonego do różnych przestrzeni nazw." #. DL_NNS #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The glibc implementation supports a maximum of 16 namespaces." msgstr "Implementacja glibc obsługuje co najwyżej 16 przestrzeni nazw." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Initialization and finalization functions" msgstr "Funkcje inicjalizacji i kończenia" #. info gcc "C Extensions" "Function attributes" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Shared objects may export functions using the " "B<__attribute__((constructor))> and B<__attribute__((destructor))> function " "attributes. Constructor functions are executed before B() returns, " "and destructor functions are executed before B() returns. A " "shared object may export multiple constructors and destructors, and " "priorities can be associated with each function to determine the order in " "which they are executed. See the B info pages (under \"Function " "attributes\") for further information." msgstr "" "Obiekty dzielone mogą eksportować funkcje za pomocą atrybutów funkcji " "B<__attribute__((constructor))> i B<__attribute__((destructor))>. Funkcje " "konstrukcyjne są wykonywane przed powrotem B(), a funkcje " "destrukcyjne są wykonywane przez powrotem B(). Obiekty dzielone " "mogą eksportować wiele konstruktorów i destruktorów, a każdej funkcji można " "przypisać priorytety, aby określić kolejność wykonywania. Więcej informacji " "na stronach info B (w rozdziale \\[Bq]Function attributes\\[rq])." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "An older method of (partially) achieving the same result is via the use of " "two special symbols recognized by the linker: B<_init> and B<_fini>. If a " "dynamically loaded shared object exports a routine named B<_init>(), then " "that code is executed after loading a shared object, before B() " "returns. If the shared object exports a routine named B<_fini>(), then that " "routine is called just before the object is unloaded. In this case, one " "must avoid linking against the system startup files, which contain default " "versions of these files; this can be done by using the B(1) I<-" "nostartfiles> command-line option." msgstr "" "Starszą metodą uzyskiwania (częściowo) tego samego wyniku jest użycie dwóch " "symboli specjalnych rozpoznawanych przez konsolidator: B<_init> i B<_fini>. " "Jeśli dynamicznie ładowany obiekt dzielony eksportuje algorytm nazwany " "B<_init>(), to kod ten jest wykonywany po załadowaniu obiektu dzielonego, " "przed powrotem B(). Jeśli obiekt dzielony eksportuje algorytm " "nazwany B<_fini>(), to jest on wywoływany zaraz przed odłączeniem obiektu. W " "tym przypadku, konieczne jest unikania linkowania wobec rozruchowych plików " "systemowych, które zawierają domyślne wersje tych plików; można to uczynić " "za pomocą opcji wiersza poleceń B(1) I<-nostartfiles>." # #. Using these routines, or the gcc #. .B \-nostartfiles #. or #. .B \-nostdlib #. options, is not recommended. #. Their use may result in undesired behavior, #. since the constructor/destructor routines will not be executed #. (unless special measures are taken). #. .\" void _init(void) __attribute__((constructor)); #. .\" void _fini(void) __attribute__((destructor)); #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Use of B<_init> and B<_fini> is now deprecated in favor of the " "aforementioned constructors and destructors, which among other advantages, " "permit multiple initialization and finalization functions to be defined." msgstr "" "Używanie B<_init> i B<_fini> jest obecnie przestarzałe, na korzyść opisanych " "wcześniej konstruktorów i destruktorów, które oprócz innych zalet, pozwalają " "na zdefiniowanie wielu funkcji inicjalizacji i kończenia." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Since glibc 2.2.3, B(3) can be used to register an exit handler " "that is automatically called when a shared object is unloaded." msgstr "" "Od glibc 2.2.3, B(3) może posłużyć do zarejestrowania uchwytu " "wyjścia, który jest automatycznie wywoływany przez odłączaniu obiektu " "dzielonego." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "History" msgstr "Historia" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "These functions are part of the dlopen API, derived from SunOS." msgstr "Funkcje te są częścią API dlopen, wywodzącego się z SunOS." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BUGS" msgstr "USTERKI" #. dlerror(): "invalid mode" #. https://sourceware.org/bugzilla/show_bug.cgi?id=18684 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "As at glibc 2.24, specifying the B flag when calling " "B() generates an error. Furthermore, specifying B " "when calling B() results in a program crash (B) if the " "call is made from any object loaded in a namespace other than the initial " "namespace." msgstr "" "Według stanu na glibc 2.24, podanie znacznika B przy " "wywoływaniu B() generuje błąd. Co więcej, podanie B " "przy wywoływaniu B() powoduje załamanie programu (B), jeśli " "wywołanie nastąpiło z dowolnego obiektu załadowanego w przestrzeni nazw " "innej niż pierwotna przestrzeń nazw." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "EXAMPLES" msgstr "PRZYKŁADY" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The program below loads the (glibc) math library, looks up the address of " "the B(3) function, and prints the cosine of 2.0. The following is an " "example of building and running the program:" msgstr "" "Poniższy program ładuje bibliotekę matematyczną (glibc), szuka adresu " "funkcji B(3) i wypisuje cosinus liczby 2.0. Pokazano przykład tworzenia " "i działania programu:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "$ B\n" "$ B<./a.out>\n" "-0.416147\n" msgstr "" "$ B\n" "$ B<./a.out>\n" "-0.416147\n" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Program source" msgstr "Kod źródłowy programu" #. http://pubs.opengroup.org/onlinepubs/009695399/functions/dlsym.html#tag_03_112_08 #. http://pubs.opengroup.org/onlinepubs/9699919799/functions/dlsym.html#tag_16_96_07 #. http://austingroupbugs.net/view.php?id=74 #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "" "#include Edlfcn.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "\\&\n" "#include Egnu/lib-names.hE /* Defines LIBM_SO (which will be a\n" " string such as \"libm.so.6\") */\n" "int\n" "main(void)\n" "{\n" " void *handle;\n" " double (*cosine)(double);\n" " char *error;\n" "\\&\n" " handle = dlopen(LIBM_SO, RTLD_LAZY);\n" " if (!handle) {\n" " fprintf(stderr, \"%s\\en\", dlerror());\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " dlerror(); /* Clear any existing error */\n" "\\&\n" " cosine = (double (*)(double)) dlsym(handle, \"cos\");\n" "\\&\n" " /* According to the ISO C standard, casting between function\n" " pointers and \\[aq]void *\\[aq], as done above, produces undefined results.\n" " POSIX.1-2001 and POSIX.1-2008 accepted this state of affairs and\n" " proposed the following workaround:\n" "\\&\n" " *(void **) (&cosine) = dlsym(handle, \"cos\");\n" "\\&\n" " This (clumsy) cast conforms with the ISO C standard and will\n" " avoid any compiler warnings.\n" "\\&\n" " The 2013 Technical Corrigendum 1 to POSIX.1-2008 improved matters\n" " by requiring that conforming implementations support casting\n" " \\[aq]void *\\[aq] to a function pointer. Nevertheless, some compilers\n" " (e.g., gcc with the \\[aq]-pedantic\\[aq] option) may complain about the\n" " cast used in this program. */\n" "\\&\n" " error = dlerror();\n" " if (error != NULL) {\n" " fprintf(stderr, \"%s\\en\", error);\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " printf(\"%f\\en\", (*cosine)(2.0));\n" " dlclose(handle);\n" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" "#include Edlfcn.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "\\&\n" "#include Egnu/lib-names.hE /* Definiuje LIBM_SO (będzie to\n" " łańcuch podobny do \"libm.so.6\") */\n" "int\n" "main(void)\n" "{\n" " void *handle;\n" " double (*cosine)(double);\n" " char *error;\n" "\\&\n" " handle = dlopen(LIBM_SO, RTLD_LAZY);\n" " if (!handle) {\n" " fprintf(stderr, \"%s\\en\", dlerror());\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " dlerror(); /* Czyści ewentualne istniejące błędy */\n" "\\&\n" " cosine = (double (*)(double)) dlsym(handle, \"cos\");\n" "\\&\n" " /* Zgodnie ze standardem ISO C, rzutowanie pomiędzy wskaźnikami\n" " funkcji a \\[aq]void *\\[aq], jak poniżej, daje niezdefiniowany wynik.\n" " POSIX.1-2001 i POSIX.1-2008 akceptują ten stan rzeczy i proponują\n" " następujące obejście problemu:\n" "\\&\n" " *(void **) (&cosine) = dlsym(handle, \"cos\");\n" "\\&\n" " To (niezgrabne) rzutowanie jest zgodne ze standem ISO C i uniknie\n" " ostrzeżeń kompilatora.\n" "\\&\n" " 2013 Technical Corrigendum 1 do POSIX.1-2008 poprawia stan rzeczy,\n" " wymagając od zgodnych implementacji obsługi rzutowań \\[aq]void *\\[aq]\n" " do wskaźnika funkcji. Tym niemniej, niektóre kompilatory (np. gcc\n" " z opcją \\[aq]-pedantic\\[aq]) mogą narzekać na rzutowanie użyte\n" " w tym programie. */\n" "\\&\n" " error = dlerror();\n" " if (error != NULL) {\n" " fprintf(stderr, \"%s\\en\", error);\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " printf(\"%f\\en\", (*cosine)(2.0));\n" " dlclose(handle);\n" " exit(EXIT_SUCCESS);\n" "}\n" #. SRC END #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "SEE ALSO" msgstr "ZOBACZ TAKŻE" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B(1), B(1), B(1), B(3), B(3), " "B(3), B(3), B(3), B(7), B(8), " "B(8)" msgstr "" "B(1), B(1), B(1), B(3), B(3), " "B(3), B(3), B(3), B(7), B(8), " "B(8)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "gcc info pages, ld info pages" msgstr "strony info gcc, strony info ld" #. type: TH #: debian-bookworm #, no-wrap msgid "2023-02-05" msgstr "5 lutego 2023 r." #. type: TH #: debian-bookworm #, no-wrap msgid "Linux man-pages 6.03" msgstr "Linux man-pages 6.03" #. type: SH #: debian-bookworm #, no-wrap msgid "VERSIONS" msgstr "WERSJE" #. type: Plain text #: debian-bookworm msgid "" "B() and B() are present in glibc 2.0 and later. " "B() first appeared in glibc 2.3.4." msgstr "" "B() i B() są obecne w glibc 2.0 i późniejszych. " "B() pierwotnie pojawiło się w glibc 2.3.4." #. type: Plain text #: debian-bookworm msgid "" "POSIX.1-2001 describes B() and B(). The B() " "function is a GNU extension." msgstr "" "POSIX.1-2001 opisuje B() i B(). Funkcja B() jest " "rozszerzeniem GNU." #. type: Plain text #: debian-bookworm msgid "" "The B, B, and B flags are GNU " "extensions; the first two of these flags are also present on Solaris." msgstr "" "Znaczniki B, B i B są " "rozszerzeniami GNU; dwa pierwsze znaczniki są obecne również w Solarisie." #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "#include Edlfcn.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" msgstr "" "#include Edlfcn.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "#include Egnu/lib-names.hE /* Defines LIBM_SO (which will be a\n" " string such as \"libm.so.6\") */\n" "int\n" "main(void)\n" "{\n" " void *handle;\n" " double (*cosine)(double);\n" " char *error;\n" msgstr "" "#include Egnu/lib-names.hE /* Definiuje LIBM_SO (będzie to\n" " łańcuch podobny do \"libm.so.6\") */\n" "int\n" "main(void)\n" "{\n" " void *handle;\n" " double (*cosine)(double);\n" " char *error;\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " handle = dlopen(LIBM_SO, RTLD_LAZY);\n" " if (!handle) {\n" " fprintf(stderr, \"%s\\en\", dlerror());\n" " exit(EXIT_FAILURE);\n" " }\n" msgstr "" " handle = dlopen(LIBM_SO, RTLD_LAZY);\n" " if (!handle) {\n" " fprintf(stderr, \"%s\\en\", dlerror());\n" " exit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " dlerror(); /* Clear any existing error */\n" msgstr " dlerror(); /* Czyści ewentualne istniejące błędy */\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " cosine = (double (*)(double)) dlsym(handle, \"cos\");\n" msgstr " cosine = (double (*)(double)) dlsym(handle, \"cos\");\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " /* According to the ISO C standard, casting between function\n" " pointers and \\[aq]void *\\[aq], as done above, produces undefined results.\n" " POSIX.1-2001 and POSIX.1-2008 accepted this state of affairs and\n" " proposed the following workaround:\n" msgstr "" " /* Zgodnie ze standardem ISO C, rzutowanie pomiędzy wskaźnikami funkcji a \n" " \\[aq]void *\\[aq], jak poniżej, daje niezdefiniowany wynik. POSIX.1-2001\n" " i POSIX.1-2008 akceptują ten stan rzeczy i proponują następujące\n" " obejście problemu:\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " *(void **) (&cosine) = dlsym(handle, \"cos\");\n" msgstr " *(void **) (&cosine) = dlsym(handle, \"cos\");\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " This (clumsy) cast conforms with the ISO C standard and will\n" " avoid any compiler warnings.\n" msgstr "" " To (niezgrabne) rzutowanie jest zgodne ze standem ISO C i uniknie\n" " ostrzeżeń kompilatora.\n" #. http://pubs.opengroup.org/onlinepubs/009695399/functions/dlsym.html#tag_03_112_08 #. http://pubs.opengroup.org/onlinepubs/9699919799/functions/dlsym.html#tag_16_96_07 #. http://austingroupbugs.net/view.php?id=74 #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " The 2013 Technical Corrigendum 1 to POSIX.1-2008 improved matters\n" " by requiring that conforming implementations support casting\n" " \\[aq]void *\\[aq] to a function pointer. Nevertheless, some compilers\n" " (e.g., gcc with the \\[aq]-pedantic\\[aq] option) may complain about the\n" " cast used in this program. */\n" msgstr "" " 2013 Technical Corrigendum 1 do POSIX.1-2008 poprawia stan rzeczy,\n" " wymagając od zgodnych implementacji obsługi rzutowań \\[aq]void *\\[aq]\n" " do wskaźnika funkcji. Tym niemniej, niektóre kompilatory (np. gcc\n" " z opcją \\[aq]-pedantic\\[aq]) mogą narzekać na rzutowanie użyte\n" " w tym programie. */\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " error = dlerror();\n" " if (error != NULL) {\n" " fprintf(stderr, \"%s\\en\", error);\n" " exit(EXIT_FAILURE);\n" " }\n" msgstr "" " error = dlerror();\n" " if (error != NULL) {\n" " fprintf(stderr, \"%s\\en\", error);\n" " exit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " printf(\"%f\\en\", (*cosine)(2.0));\n" " dlclose(handle);\n" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" " printf(\"%f\\en\", (*cosine)(2.0));\n" " dlclose(handle);\n" " exit(EXIT_SUCCESS);\n" "}\n" #. type: TH #: fedora-40 fedora-rawhide mageia-cauldron #, no-wrap msgid "2023-10-31" msgstr "31 października 2023 r." #. type: TH #: fedora-40 mageia-cauldron #, no-wrap msgid "Linux man-pages 6.06" msgstr "Linux man-pages 6.06" #. type: TH #: fedora-rawhide #, no-wrap msgid "Linux man-pages 6.7" msgstr "Linux man-pages 6.7" #. type: TH #: opensuse-leap-15-6 #, no-wrap msgid "2023-03-30" msgstr "30 marca 2023 r." #. type: TH #: opensuse-leap-15-6 #, no-wrap msgid "Linux man-pages 6.04" msgstr "Linux man-pages 6.04" #. type: TH #: opensuse-tumbleweed #, no-wrap msgid "Linux man-pages (unreleased)" msgstr "Linux man-pages (niewydane)"