Provided by: manpages-pl_4.27.0-1_all bug

NAZWA

       strip - usuwa symbole i inne dane z plików obiektowych

SKŁADNIA

       strip [-F nazwa-bfd |--target=nazwa-bfd]
             [-I nazwa-bfd |--input-target=nazwa-bfd]
             [-O nazwa-bfd |--output-target=nazwa-bfd]
             [-s|--strip-all]
             [-S|-g|-d|--strip-debug]
             [--strip-dwo]
             [-K nazwa-symbolu|--keep-symbol=nazwa-symbolu]
             [-M|--merge-notes][--no-merge-notes]
             [-N nazwa-symbolu |--strip-symbol=nazwa-symbolu]
             [-w|--wildcard]
             [-x|--discard-all] [-X |--discard-locals]
             [-R nazwa-sekcji |--remove-section=nazwa-sekcji]
             [--keep-section=wzorzec-sekcji]
             [--remove-relocations=wzorzec-sekcji]
             [--strip-section-headers]
             [-o plik] [-p|--preserve-dates]
             [-D|--enable-deterministic-archives]
             [-U|--disable-deterministic-archives]
             [--keep-section-symbols]
             [--keep-file-symbols]
             [--only-keep-debug]
             [-v |--verbose] [-V|--version]
             [--help] [--info]
             plik-obiektowy...

OPIS

       GNU strip usuwa wszystkie symbole z plików obiektowych plik-obiektowy. Lista plików obiektowych może
       zawierać archiwa. Podany musi być przynajmniej jeden plik obiektowy.

       strip modyfikuje pliki podane w argumencie - nie zapisuje zmodyfikowanych kopii pod innymi nazwami.

OPCJE

       -F nazwa-bfd
       --target=nazwa-bfd
           Traktuje  oryginalny plik-obiektowy jak plik obiektowy w formacie nazwa-bfd i zapisuje go w tym samym
           formacie.

       --help
           Wypisuje sposób użycia strip z wiersza poleceń i kończy pracę programu.

       --info
           Wyświetla listę wszystkich dostępnych architektur i formatów plików obiektowych.

       -I nazwa-bfd
       --input-target=nazwa-bfd
           Traktuje oryginalny plik-obiektowy jako plik o formacie kodu obiektowego nazwa-bfd.

       -O nazwa-bfd
       --output-target=nazwa-bfd
           Zastępuje plik-obiektowy plikiem w formacie wyjściowym nazwa-bfd.

       -R nazwa-sekcji
       --remove-section=nazwa-sekcji
           Oprócz sekcji które normalnie są usuwane, usuwa z pliku  wyjściowego  także  każdą  sekcję  o  nazwie
           nazwa-sekcji.  Opcja  ta  może  być  podana  więcej  niż  raz. Proszę zauważyć, że jej nieodpowiednie
           używanie może spowodować, że plik  obiektowy  będzie  bezużyteczny.  Nazwa-sekcji  może  się  kończyć
           znakiem  dopasowania  *.  W  takim  przypadku  zostaną usunięte sekcje o nazwach zaczynających się od
           nazwy-sekcji.

           Jeśli pierwszym znakiem nazwy-sekcji jest  znak  wykrzyknika  („!”),  to  pasujące  sekcje  nie  będą
           usuwane, nawet jeśli poprzednie użycie opcji --remove-section w tej samej linii poleceń spowodowałoby
           ich usunięcie. Na przykład:

                     --remove-section=.text.* --remove-section=!.text.foo

           usunie wszystkie sekcje pasujące do wzorca „.text.*”, z wyjątkiem sekcji „.text.foo”.

       --keep-section=wzorzec-sekcji
           Przy usuwaniu sekcji z pliku wyjściowego, pozostawia sekcje pasujące do wzorca-sekcji.

       --remove-relocations=wzorzec-sekcji
           Usuwa  z  pliku  wynikowego  relokacje  w każdej sekcji pasującej do wzorca-sekcji. Opcja ta może być
           podana więcej niż raz. Proszę zauważyć, że jej  nieodpowiednie  używanie  może  spowodować,  że  plik
           obiektowy będzie bezużyteczny. Wzorzec-sekcji może zawierać znaki dopasowania. Na przykład:

                     --remove-relocations=.text.*

           usunie wszystkie relokacje z wszystkich sekcji pasujących do wzorca „.text.*”.

           Jeśli  pierwszym  znakiem  wzorca-sekcji jest znak wykrzyknika („!”), to relokacje nie będą usuwane z
           pasujących sekcji, nawet jeśli poprzednie użycie opcji --remove-relocations w tej samej linii poleceń
           spowodowałoby  usunięcie relokacji. Na przykład:

                     --remove-relocations=.text.* --remove-relocations=!.text.foo

           usunie wszystkie relokacje z sekcji pasujących do wzorca „.text.*”, z wyjątkiem  relokacji  w  sekcji
           „.text.foo”.

       --strip-section-headers
           Usuwa nagłówki sekcji. Opcja jest przeznaczona do plików ELF. Wymusza --strip-all i --merge-notes.

       -s
       --strip-all
           Usuwa wszystkie symbole.

       -g
       -S
       -d
       --strip-debug
           Usuwa tylko symbole debugowania.

       --strip-dwo
           Usuwa  zawartość  wszystkich  sekcji  DWARF .dwo, pozostawiając pozostałe sekcje i wszystkie symbole.
           Więcej informacji można znaleźć w opisie tej opcji w rozdziale objcopy.

       --strip-unneeded
           Usuwa  wszystkie  symbole,  które  nie  są  potrzebne  do  przetwarzania  relokacji,  oprócz  symboli
           debugowania i sekcji, usuwanych przez --strip-debug.

       -K nazwa-symbolu
       --keep-symbol=nazwa-symbolu
           Podczas  usuwania symboli zachowuje symbol nazwa-symbolu, nawet jeśli normalnie byłby usunięty. Opcja
           ta może być podawana więcej niż jeden raz.

       -M
       --merge-notes
       --no-merge-notes
           W przypadku plików ELF próbuje (lub nie próbuje)  zredukować  rozmiar  sekcji  typu  SHT_NOTE,  przez
           usunięcie  zduplikowanych  notatek.  Domyślnie próba takiej redukcji ma miejsce chyba, że dochodzi do
           usuwania informacji debugowania lub DWO.

       -N nazwa-symbolu
       --strip-symbol=nazwa-symbolu
           Usuwa symbol nazwa-symbolu z pliku źródłowego. Opcja ta może być podawana więcej niż raz i łączona  z
           innymi opcjami usuwania z wyjątkiem -K.

       -o plik
           Umieszcza ogołocone wyjście w pliku bez zastępowania istniejącego pliku. Z tym argumentem podany może
           być tylko jeden argument plik-obiektowy.

       -p
       --preserve-dates
           Zachowuje prawa dostępu i daty modyfikacji pliku.

       -D
       --enable-deterministic-archives
           Działa  w  trybie  deterministycznym.  Podczas  kopiowania  członków  archiwum  i zapisywania indeksu
           archiwum używa wartości zero w polach UID, GID, znacznika czasowego, a także używa  jednolitych  praw
           dostępu do wszystkich plików.

           Jeśli  binutils zostało skonfigurowane z opcją --enable-deterministic-archives, to jest to zachowanie
           domyślne. Można je wyłączyć za pomocą poniżej opisanej opcji -U.

       -U
       --disable-deterministic-archives
           Nie działa w trybie deterministycznym.  Jest  to  odwrotność  opcji  -D  opisanej  powyżej:   podczas
           kopiowania  członków  archiwum i zapisywania indeksu archiwum używa właściwych wartości pól UID, GID,
           znacznika czasowego i praw dostępu do pliku.

           Jest    to    zachowanie    domyślne,    o    ile    binutils    nie    został    skonfigurowany    z
           --enable-deterministic-archives.

       -w
       --wildcard
           Pozwala  na użycie wyrażeń regularnych w argumentach nazwa-symbolu pozostałych opcji linii poleceń. W
           dowolnej części nazwy symbolu można użyć znaku zapytania („?”), gwiazdki („*”),  odwrotnego  ukośnika
           („\”)  oraz  operatora  nawiasów  kwadratowych  („[]”).  Jeśli  pierwszym  znakiem nazwy symbolu jest
           wykrzyknik („!”), to dla tego symbolu przełącznik ma odwrotne znacznie. Na przykład:

                     -w -K !foo -K fo*

           spowoduje, że strip zachowa tylko te symbole, które zaczynają się od liter „fo”,  ale  usunie  symbol
           „foo”.

       -x
       --discard-all
           Usuwa symbole nieglobalne.

       -X
       --discard-locals
           Usuwa generowane przez kompilator symbole lokalne (zaczynają się zwykle od L lub .).

       --keep-section-symbols
           Podczas  usuwania  symboli  z  pliku,  na  przykład  za  pomocą  --strip-debug  lub --strip-unneeded,
           pozostawia wszystkie symbole określające nazwy sekcji, które w przeciwnym wypadku zostałyby usunięte.

       --keep-file-symbols
           Podczas usuwania  symboli  z  pliku,  na  przykład  za  pomocą  --strip-debug  lub  --strip-unneeded,
           pozostawia  wszystkie  symbole  określające  nazwy  plików  źródłowych,  które  w  przeciwnym wypadku
           zostałyby usunięte.

       --only-keep-debug
           Usuwa symbole z pliku, czyszcząc zawartość wszystkich sekcji, które nie zostałyby wyczyszczone  przez
           --strip-debug,  ale  pozostawiając sekcje debugowania nienaruszone. W plikach ELF pozostawia to także
           sekcje notatek.

           Uwaga: pozostawiane są nagłówki usuniętych sekcji, włączając to  ich  rozmiary,  ale  sama  zawartość
           sekcji  jest  usuwana. Nagłówki sekcji są pozostawiane po to, żeby inne narzędzia mogły sparować plik
           debuginfo z rzeczywisty programem wykonywalnym nawet wtedy, gdy ten  program  został  realokowany  do
           innej przestrzeni adresów,

           Założenie  jest  takie,  że  ta  opcja  będzie  używana  łącznie  z --add-gnu-debuglink, aby utworzyć
           dwuczęściowy plik wykonywalny. Pierwsza część to program binarny pozbawiony zbędnych  symboli,  który
           zajmuje  mniej  miejsca  w  pamięci  RAM i w pakiecie dystrybucji systemu, a druga część zawiera plik
           informacji debugowania, potrzebny tylko wtedy, gdy   wymagane do  debugowanie  aplikacji.  Sugerowany
           sposób tworzenia tych plików jest następujący:

           1.<Skonsoliduj program wykonywalny, jak to się zwykle robi. Zakładając, że jest to nazwane>
               "foo", to...

           1.<Run "objcopy --only-keep-debug foo foo.dbg" to>
               utworzyć plik zawierający informacje debugowania.

           1.<Run "objcopy --strip-debug foo" to create a>
               wyczyszczony ze zbędnych sekcji program wykonywalny.

           1.<Run "objcopy --add-gnu-debuglink=foo.dbg foo">
               aby dodać informacje debugowania do programu wykonywalnego wyczyszczonego ze zbędnych sekcji.

           Uwaga:  Wybór  „.dbg”  jako  rozszerzenia plików zawierających informacje debugowania jest całkowicie
           przypadkowy. Także krok „--only-keep-debug” jest opcjonalny. Zamiast niego można wykonać:

           1. Skonsoliduj program wykonywalny, jak to się zwykle robi.
           1.<Copy "foo" to "foo.full">
           1.<Run "strip --strip-debug foo">
           1.<Run "objcopy --add-gnu-debuglink=foo.full foo">

           Oznacza to, że plik wskazywany przez --add-gnu-debuglink może być pełnym programem wykonywalnym.  Nie
           musi to być plik tworzony przez opcję --only-keep-debug.

           Uwaga:  ta  opcja jest przeznaczona do użycia tylko z całkowicie skonsolidowanymi plikami. Nie ma ona
           sensu w przypadku plików obiektowych, w których informacje debugowania mogą nie być  kompletne.  Poza
           tym  właściwość  gnu_debuglink  obecnie dopuszcza wystąpienie nazwy tylko jednego pliku zawierającego
           informacjami debugowania, czyli nie pozwala na wiele plików, z których  każdy  zawierałby  informacje
           debugowania dla osobnego pliku obiektowego.

       -V
       --version
           Wypisuje numer wersji programu strip.

       -v
       --verbose
           Szczegółowe  wyjście: wyświetla wszystkie zmodyfikowane pliki obiektowe. W wypadku archiwów, strip -v
           wyświetla wszystkich członków archiwum.

       @plik
           Czyta opcje wiersza poleceń z podanego pliku. Przeczytane opcje są wstawiane  w  miejsce  oryginalnej
           opcji @plik. Jeśli plik nie istnieje lub nie może być odczytany, ta opcja jest traktowana dosłownie i
           nie jest usuwana.

           Opcje  w  pliku  są  rozdzielane  białymi znakami. Biały znak może wystąpić w opcji, jeśli cała opcja
           zostanie ujęta w pojedyncze albo podwójne cudzysłowy. Można dodać dowolny znak (włączając w  to  znak
           odwrotnego  ukośnika),  poprzedzając  go  znakiem  odwrotnego  ukośnika.  Plik  może również zawierać
           dodatkowe opcje @plik -  w takim przypadku każda z takich opcji będzie przetwarzana rekurencyjnie.

ZOBACZ TAKŻE

       wpisy info binutils.

PRAWA AUTORSKIE

       Copyright (c) 1991-2025 Free Software Foundation, Inc.

       Zezwala się na kopiowanie, rozpowszechnianie i/lub modyfikowanie tego  dokumentu  na  warunkach  Licencji
       Wolnej  Dokumentacji  GNU  (GNU Free Documentation License) w wersji 1.3 lub jakiejkolwiek nowszej wersji
       opublikowanej przez Fundację Wolnego Oprogramowania, przy czym  Sekcjami  niezmiennymi  są  „GNU  General
       Public  License”  i  „GNU  Free  Documentation  License”, bez treści przedniej lub tylnej strony okładki.
       Egzemplarz licencji zamieszczono w sekcji zatytułowanej „GNU Free Documentation License”.

TŁUMACZENIE

       Tłumaczenie  niniejszej  strony  podręcznika:  Przemek  Borys   <pborys@dione.ids.pl>,   Robert   Luberda
       <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

       Niniejsze  tłumaczenie  jest  wolną  dokumentacją.  Bliższe informacje o warunkach licencji można uzyskać
       zapoznając  się  z  GNU General Public License w wersji 3  lub  nowszej.   Nie   przyjmuje   się   ŻADNEJ
       ODPOWIEDZIALNOŚCI.

       Błędy  w  tłumaczeniu  strony  podręcznika  prosimy  zgłaszać  na  adres  listy  dyskusyjnej manpages-pl-
       list@lists.sourceforge.net.

binutils-2.44                                    3 marca 2025 r.                                        STRIP(1)