GNU Binutils

Versione del 30 dic 2019 alle 00:47 di Jimmy Olano (discussione | contributi) (Ciao a tutti! Ho usato il pilastro fondamentale di Wikipedia: ho aggiunto un riferimento; se pensi di aver sbagliato, per favore disfa la mia edizione e appena posso lo correggerò, grazie in anticipo!)

GNU Binary Utilities[1][2], meglio note come GNU Binutils,[3] è una collezione di programmi per la creazione e la gestione di file binari, oggetto, librerie, dati del profilo e codice sorgente dell'assembly.

GNU Binutils
software
Logo
Logo
Genere
Sviluppatoreprogetto GNU
Ultima versione2.44 (2 febbraio 2025)
Sistema operativo
LicenzaGNU General Public License v3.0 or later, BSD 3-clausole e GNU GPL v2+
(licenza libera)
Sito webwww.gnu.org/software/binutils/

Il pacchetto binutils comprende programmi come ld e può essere utilizzato in combinazione con compilatori quali GCC. Il suo codice sorgente è distribuito insieme al GNU Debugger sotto licenza GNU General Public License ed è disponibile per numerosi sistemi operativi Unix-like, incluso Linux.[4]

La maggior parte del software utilizza la libreria Binary File Descriptor e alcuni programmi fanno uso della libreria opcodes.

Strumenti

Sono stati originariamente scritti dai programmatori di Cygnus Solutions.

Le binutils GNU sono in genere usate insieme a compilatori come GNU Compiler Collection (gcc), strumenti di costruzione come make e GNU Debugger (gdb).

Attraverso l'uso della libreria di descrittori di file binari (libbfd), la maggior parte degli strumenti supporta i vari formati di file oggetto supportati da libbfd.

H.J. Lu mantiene una versione di binutils con funzionalità puramente per Linux.[5]

Comandi

Le binutils includono i seguenti comandi:[6][7][8]

as Linguaggio assembly, popolarmente noto come GAS (Gnu ASsembler)
ld Linking[9]
gprof Analisi delle prestazioni del software
addr2line converti l'indirizzo in file e riga
ar creare, modificare ed estrarre dagli archivi
c++filt Nome filtro di differenziazione,[10] per simboli in linguaggio C++
dlltool Crea file per la creazione e l'utilizzo di DLL
gold Linking alternativa
nlmconv conversione del file oggetto in a NetWare Loadable Module
nm elenca i simboli nei file oggetto
objcopy copiare i file oggetto, eventualmente apportando modifiche
objdump scaricare informazioni sui file oggetto
ranlib generare indici per gli archivi
readelf visualizza il contenuto di ELF file
size elenca le dimensioni totali e di sezione
strings elenca le stringhe stampabili
strip rimuove i simboli da un file oggetto
windmc generates Windows message resources
windres compilatore per Windows resource files

elfutils

Ulrich Drepper ha scritto elfutils, in sostituzione di GNU Binutils, esclusivamente per Linux e con supporto solo per ELF e DWARF.[11]

Note

  1. ^ (EN) GNU Binary Utilities, su sourceware.org.
  2. ^ (EN) The GNU Binary Utilities (PDF), su eecs.umich.edu, aprile 2010.
  3. ^ (EN) Clifton, GNU Binutils 2.33.1 released, su lists.gnu.org, 12 ottobre 2019. URL consultato il 29 decembre 2019.
  4. ^ (EN) Index of /pub/linux/devel/binutils/, su The Linux Kernel Archives.
  5. ^ (EN) README-release.binutils-2.24.51.0.3, su kernel.org. URL consultato il 29 dicembre 2019.
  6. ^ (EN) GNU Binary Utilities, su Free Software Directory, 16 ottobre 2019. URL consultato il 29 decembre 2019.
  7. ^ (EN) GNU Binutils, su sourceware.org, 12 ottobre 2019. URL consultato il 29 decembre 2019.
  8. ^ (EN) GNU Binutils, su Progetto GNU, 12 ottobre 2019. URL consultato il 29 decembre 2019.
  9. ^ Per quanto alcuni testi e autori in lingua italiana abbiano scelto di tradurre il termine, quest'ultimo è di uso molto infrequente.
  10. ^ (EN) Name mangling (C++ only), su IBM Knowledge Center. URL consultato il 29 decembre 2019.
  11. ^ (EN) The elfutils project, su sourceware.org. URL consultato il 29 decembre 2019.

Voci correlate

Collegamenti esterni