EnglishFranceseSpagnolo

Favicon di OnWorks

avr-objcopy - Online nel cloud

Esegui avr-objcopy nel provider di hosting gratuito OnWorks su Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS

Questo è il comando avr-objcopy che può essere eseguito nel provider di hosting gratuito OnWorks utilizzando una delle nostre molteplici workstation online gratuite come Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS

PROGRAMMA:

NOME


objcopy - copia e traduci file oggetto

SINOSSI


oggettocopia [-F bfdname|--bersaglio=bfdname]
[-I bfdname|--destinazione-input=bfdname]
[-O bfdname|--destinazione-output=bfdname]
[-B bfdarch|--architettura-binaria=bfdarch]
[-S|--striscia-tutto]
[-g|--strip-debug]
[-K nomesimbolo|--keep-simbolo=nomesimbolo]
[-N nomesimbolo|--simbolo-striscia=nomesimbolo]
[--striscia-simbolo-non-necessario=nomesimbolo]
[-G nomesimbolo|--keep-global-simbolo=nomesimbolo]
[--localize-nascosto]
[-L nomesimbolo|--localize-simbolo=nomesimbolo]
[--globalize-simbolo=nomesimbolo]
[-W nomesimbolo|--simbolo-indebolito=nomesimbolo]
[-w|--carta jolly]
[-x|--scarta-tutto]
[-X|--discard-locals]
[-b byte|--byte=byte]
[-i [ampiezza]|--interlacciare[=ampiezza]]
[--larghezza-interleave=larghezza]
[-j modello di sezione|--solo-sezione=modello di sezione]
[-R modello di sezione|--remove-sezione=modello di sezione]
[-p|--preserve-date]
[-D|--enable-archivi-deterministici]
[-U|--disabilita-archivi-deterministici]
[--debug]
[--riempi-gap=val]
[--pad-a=indirizzo]
[--set-inizio=val]
[--regola-inizio=aumento]
[--change-address=aumento]
[--cambia-indirizzo-sezione modello di sezione{=,+,-}val]
[--change-sezione-lma modello di sezione{=,+,-}val]
[--change-sezione-vma modello di sezione{=,+,-}val]
[--avvisi-cambiamento] [--avvisi-nessun-cambiamento]
[--set-sezione-flags modello di sezione=bandiere]
[--aggiungi-sezione nomesezione=Nome del file]
[--sezione-dump nomesezione=Nome del file]
[--rinomina-sezione vecchio nome=nuovo nome[,bandiere]]
[--nomi-sezioni-lunghe {abilita, disabilita, mantieni}]
[--change-leader-char] [--remove-leader-char]
[--reverse-byte=num]
[--srec-len=ivale] [--srec-forceS3]
[--ridefine-sim vecchio=nuovi]
[--redefine-simboli=Nome del file]
[--indebolire]
[--keep-simboli=Nome del file]
[--strip-simboli=Nome del file]
[--striscia-simboli-non necessari=Nome del file]
[--keep-global-simboli=Nome del file]
[--localize-simboli=Nome del file]
[--globalize-simboli=Nome del file]
[--simboli-indeboliti=Nome del file]
[--alt-codice-macchina=Index]
[--prefisso-simboli=stringa]
[--sezioni-prefisso=stringa]
[--prefisso-alloc-sezioni=stringa]
[--add-gnu-debuglink=percorso-file]
[--keep-file-simboli]
[--only-keep-debug]
[--striscia-dwo]
[--extract-dwo]
[--estrarre-simbolo]
[--testo-scrivibile]
[--testo in sola lettura]
[--puro]
[--impuro]
[--allineamento-file=num]
[--heap=Taglia]
[--base-immagine=indirizzo]
[--allineamento-sezione=num]
[--pila=Taglia]
[--sottosistema=quale:maggiore.minore]
[--compress-sezioni-debug]
[--decomprimi-sezioni-debug]
[--dwarf-profondità=n]
[--inizio-nano=n]
[-v|--verboso]
[-V|--versione]
[--Aiuto] [--Informazioni]
infilare [file di uscita]

DESCRIZIONE


Il GNU objcopy l'utilità copia il contenuto di un file oggetto in un altro. objcopy usa
la libreria GNU BFD per leggere e scrivere i file oggetto. Può scrivere la destinazione
file oggetto in un formato diverso da quello del file oggetto di origine. Il comportamento esatto
of objcopy è controllato dalle opzioni della riga di comando. Notare che objcopy deve essere in grado di
copiare un file completamente collegato tra due formati qualsiasi. Tuttavia, copiare un oggetto rilocabile
file tra due formati potrebbe non funzionare come previsto.

objcopy crea file temporanei per eseguire le sue traduzioni e li elimina in seguito.
objcopy usa BFD per fare tutto il suo lavoro di traduzione; ha accesso a tutti i formati
descritto in BFD e quindi è in grado di riconoscere la maggior parte dei formati senza che gli venga detto esplicitamente.

objcopy può essere utilizzato per generare S-record utilizzando un target di output di seg (ad esempio, usa -O
seg).

objcopy può essere utilizzato per generare un file binario grezzo utilizzando un target di output di binario
(ad esempio, usa -O binario). quando objcopy genera un file binario grezzo, essenzialmente
produrre un dump della memoria del contenuto del file oggetto di input. Tutti i simboli e
le informazioni sul trasferimento verranno eliminate. Il dump della memoria inizierà all'indirizzo di caricamento
della sezione più bassa copiata nel file di output.

Quando si genera un S-record o un file binario grezzo, può essere utile usare -S rimuovere
sezioni contenenti informazioni di debug. In alcuni casi -R sarà utile per rimuovere
sezioni che contengono informazioni non necessarie al file binario.

Nota---objcopy non è in grado di modificare l'endianità dei suoi file di input. Se l'ingresso
il formato ha un endianness (alcuni formati non lo fanno), objcopy può solo copiare gli input in un file
formati che hanno la stessa endianness o che non hanno endianness (es. seg). (Però,
si può consultare il --reverse-byte opzione.)

VERSIONI


infilare
file di uscita
I file di input e di output, rispettivamente. Se non specifichi file di uscita, objcopy
crea un file temporaneo e rinomina in modo distruttivo il risultato con il nome di infilare.

-I bfdname
--destinazione-input=bfdname
Considera il formato dell'oggetto del file sorgente come bfdname, piuttosto che tentare di
dedurlo.

-O bfdname
--destinazione-output=bfdname
Scrivi il file di output utilizzando il formato dell'oggetto bfdname.

-F bfdname
--bersaglio=bfdname
Usa il bfdname come formato dell'oggetto sia per il file di input che per quello di output; cioè, semplicemente
trasferire i dati dall'origine alla destinazione senza traduzione.

-B bfdarch
--architettura-binaria=bfdarch
Utile quando si trasforma un file di input senza architettura in un file oggetto. In questo
caso l'architettura di output può essere impostata su bfdarch. Questa opzione verrà ignorata se
il file di input ha un noto bfdarch. Puoi accedere a questi dati binari all'interno di un programma
facendo riferimento ai simboli speciali creati dal processo di conversione. Queste
i simboli sono chiamati _binario_objfile_inizio, _binario_objfile_fine e
_binario_objfile_dimensione. ad esempio puoi trasformare un file immagine in un file oggetto e
quindi accedi nel tuo codice usando questi simboli.

-j modello di sezione
--solo-sezione=modello di sezione
Copia solo le sezioni indicate dal file di input al file di output. Questa opzione
può essere somministrato più di una volta. Nota che l'utilizzo di questa opzione in modo inappropriato potrebbe rendere il
file di output inutilizzabile. I caratteri jolly sono accettati in modello di sezione.

-R modello di sezione
--remove-sezione=modello di sezione
Rimuovi qualsiasi sezione corrispondente modello di sezione dal file di output. Questa opzione potrebbe essere
dato più di una volta. Nota che l'utilizzo di questa opzione in modo inappropriato potrebbe rendere l'output
file inutilizzabile. I caratteri jolly sono accettati in modello di sezione. Usando entrambi i -j
e -R opzioni insieme si traduce in un comportamento indefinito.

-S
--striscia-tutto
Non copiare le informazioni di rilocazione e simbolo dal file di origine.

-g
--strip-debug
Non copiare simboli o sezioni di debug dal file di origine.

--striscia-non necessaria
Elimina tutti i simboli che non sono necessari per l'elaborazione del trasferimento.

-K nomesimbolo
--keep-simbolo=nomesimbolo
Quando si eliminano i simboli, mantenere il simbolo nomesimbolo anche se normalmente sarebbe spogliato.
Questa opzione può essere data più di una volta.

-N nomesimbolo
--simbolo-striscia=nomesimbolo
Non copiare il simbolo nomesimbolo dal file sorgente. Questa opzione può essere data di più
di una volta

--striscia-simbolo-non-necessario=nomesimbolo
Non copiare il simbolo nomesimbolo dal file sorgente a meno che non sia necessario a
trasferimento. Questa opzione può essere data più di una volta.

-G nomesimbolo
--keep-global-simbolo=nomesimbolo
Mantieni solo il simbolo nomesimbolo globale. Rendi tutti gli altri simboli locali nel file, in modo che
non sono visibili esternamente. Questa opzione può essere data più di una volta.

--localize-nascosto
In un oggetto ELF, contrassegna tutti i simboli con visibilità nascosta o interna come locali.
Questa opzione si applica alle opzioni di localizzazione specifiche dei simboli come -L.

-L nomesimbolo
--localize-simbolo=nomesimbolo
Crea un simbolo nomesimbolo local al file, in modo che non sia visibile esternamente. Questo
l'opzione può essere data più di una volta.

-W nomesimbolo
--simbolo-indebolito=nomesimbolo
Crea un simbolo nomesimbolo debole. Questa opzione può essere data più di una volta.

--globalize-simbolo=nomesimbolo
Dai il simbolo nomesimbolo ambito globale in modo che sia visibile al di fuori del file in
quale è definito. Questa opzione può essere data più di una volta.

-w
--carta jolly
Consenti espressioni regolari in nomesimbolosono usati in altre opzioni della riga di comando. Il
Gli operatori punto interrogativo (?), asterisco (*), barra rovesciata (\) e parentesi quadre ([]) possono
essere utilizzato ovunque nel nome del simbolo. Se il primo carattere del nome del simbolo è il
punto esclamativo (!) quindi il senso dell'interruttore è invertito per quel simbolo. Per
esempio:

-w -W !pippo -W fo*

farebbe sì che objcopy indebolisca tutti i simboli che iniziano con "fo" tranne il simbolo
"pippo".

-x
--scarta-tutto
Non copiare simboli non globali dal file di origine.

-X
--discard-locals
Non copiare i simboli locali generati dal compilatore. (Di solito iniziano con L or ..)

-b byte
--byte=byte
Se l'interlacciamento è stato abilitato tramite il --interlacciare opzione quindi avviare l'intervallo di
byte da tenere al byteesimo byte. byte può essere compreso tra 0 e ampiezza-1, dove
ampiezza è il valore dato da --interlacciare opzione.

-i [ampiezza]
--interfoglio[=ampiezza]
Copia solo un intervallo di ogni ampiezza byte. (I dati dell'intestazione non sono interessati). Selezionare
quale byte nell'intervallo inizia la copia con --byte opzione. Seleziona la larghezza di
la gamma con il --larghezza-interfoliazione opzione.

Questa opzione è utile per creare file per programmare la ROM. In genere viene utilizzato con an
destinazione di output "srec". Notare che objcopy si lamenterà se non specifichi il
--byte opzione pure.

L'ampiezza dell'interfoliazione predefinita è 4, quindi con --byte impostato su 0, objcopy copierebbe il
primo byte ogni quattro byte dall'ingresso all'uscita.

--larghezza-interleave=larghezza
Se utilizzato con il --interlacciare opzione, copia larghezza byte alla volta. L'inizio del
l'intervallo di byte da copiare è impostato da --byte opzione e l'estensione della gamma
è impostato con --interlacciare opzione.

Il valore predefinito per questa opzione è 1. Il valore di larghezza più il byte valore impostato da
, il --byte l'opzione non deve superare l'ampiezza dell'interfoliazione impostata da --interlacciare
opzione.

Questa opzione può essere utilizzata per creare immagini per due flash a 16 bit intercalati in a
Bus a 32 bit passando -b 0 -i 4 --interleave-larghezza=2 e -b 2 -i 4
--interleave-larghezza=2 a due objcopy comandi. Se l'input era '12345678' allora il
le uscite sarebbero rispettivamente '1256' e '3478'.

-p
--preserve-date
Imposta le date di accesso e modifica del file di output in modo che corrispondano a quelle di
il file di ingresso.

-D
--enable-archivi-deterministici
Operare in deterministico modalità. Quando si copiano i membri dell'archivio e si scrive l'archivio
index, usa zero per UID, GID, timestamp e usa modalità file coerenti per tutti
File.

If binutils è stato configurato con --enable-archivi-deterministici, allora questa modalità è attiva
per impostazione predefinita. Può essere disabilitato con il -U opzione, di seguito.

-U
--disabilita-archivi-deterministici
Do non è un operare in deterministico modalità. Questo è l'inverso di -D opzione, sopra:
quando si copiano i membri dell'archivio e si scrive l'indice dell'archivio, utilizzare il loro UID, GID,
timestamp e valori della modalità file.

Questa è l'impostazione predefinita a meno che binutils è stato configurato con
--enable-archivi-deterministici.

--debug
Converti le informazioni di debug, se possibile. Questa non è l'impostazione predefinita perché solo
alcuni formati di debug sono supportati e il processo di conversione può richiedere tempo
consumando.

--riempimento val
Riempi gli spazi tra le sezioni con val. Questa operazione si applica al caricare indirizzo (LMA)
delle sezioni. Si fa aumentando la dimensione della sezione con il più basso
indirizzo e riempiendo lo spazio extra creato con val.

--pad-a indirizzo
Riempi il file di output fino all'indirizzo di caricamento indirizzo. Questo viene fatto aumentando il
dimensione dell'ultima sezione. Lo spazio extra viene riempito con il valore specificato da
--riempimento (predefinito zero).

--set-inizio val
Imposta l'indirizzo iniziale del nuovo file su val. Non tutti i formati di file oggetto supportano
impostazione dell'indirizzo di partenza.

--cambia-inizio aumento
--regolare-iniziare aumento
Modificare l'indirizzo di partenza aggiungendo aumento. Non tutti i formati di file oggetto supportano l'impostazione
l'indirizzo di partenza.

--cambia-indirizzi aumento
--regola-vma aumento
Modificare gli indirizzi VMA e LMA di tutte le sezioni, nonché l'indirizzo iniziale, di
l'aggiunta di aumento. Alcuni formati di file oggetto non consentono la modifica degli indirizzi delle sezioni
arbitrariamente. Nota che questo non riposiziona le sezioni; se il programma prevede
sezioni da caricare ad un certo indirizzo, e questa opzione serve per cambiare il
sezioni in modo tale che vengano caricate a un indirizzo diverso, il programma potrebbe non riuscire.

--cambia-indirizzo-sezione modello di sezione{=,+,-}val
--regolare-sezione-vma modello di sezione{=,+,-}val
Imposta o modifica sia l'indirizzo VMA che l'indirizzo LMA di qualsiasi sezione corrispondente
modello di sezione. Se = viene utilizzato, l'indirizzo della sezione è impostato su val. Altrimenti, val is
aggiunto o sottratto all'indirizzo della sezione. Vedi i commenti sotto
--cambia-indirizzi, sopra. Se modello di sezione non corrisponde a nessuna sezione nell'input
file, verrà emesso un avviso, a meno che --avvisi-nessun-cambiamento viene utilizzato.

--change-sezione-lma modello di sezione{=,+,-}val
Imposta o modifica l'indirizzo LMA di qualsiasi sezione corrispondente modello di sezione. La LMA
indirizzo è l'indirizzo in cui la sezione verrà caricata in memoria al caricamento del programma
tempo. Normalmente questo è lo stesso dell'indirizzo VMA, che è l'indirizzo del
sezione durante l'esecuzione del programma, ma su alcuni sistemi, specialmente quelli in cui è presente un programma
tenuto in ROM, i due possono essere diversi. Se = viene utilizzato, l'indirizzo della sezione è impostato su
val. Altrimenti, val viene aggiunto o sottratto dall'indirizzo della sezione. Vedi il
commenti sotto --cambia-indirizzi, sopra. Se modello di sezione non corrisponde a nessuno
sezioni nel file di input, verrà emesso un avviso, a meno che --avvisi-nessun-cambiamento is
Usato.

--change-sezione-vma modello di sezione{=,+,-}val
Imposta o modifica l'indirizzo VMA di qualsiasi sezione corrispondente modello di sezione. L'indirizzo VMA
è l'indirizzo dove si troverà la sezione una volta avviato il programma
esecuzione. Normalmente questo è lo stesso dell'indirizzo LMA, che è l'indirizzo dove
la sezione verrà caricata in memoria, ma su alcuni sistemi, specialmente quelli dove a
programma si svolge nella ROM, i due possono essere diversi. Se = viene utilizzato, l'indirizzo della sezione
è impostato su val. Altrimenti, val viene aggiunto o sottratto dall'indirizzo della sezione.
Vedi i commenti sotto --cambia-indirizzi, sopra. Se modello di sezione non corrisponde
qualsiasi sezione nel file di input, verrà emesso un avviso, a meno che --avvisi-nessun-cambiamento
viene utilizzato.

--avvisi-cambiamento
--regolare gli avvisi
If --cambia-indirizzo-sezione or --change-sezione-lma or --change-sezione-vma si usa,
e il modello di sezione non corrisponde ad alcuna sezione, invia un avviso. Questo è il
predefinito.

--avvisi-nessun-cambiamento
--no-adjust-avvisi
Non emettere un avviso se --cambia-indirizzo-sezione or --regolare-sezione-lma or
--regolare-sezione-vma viene utilizzato, anche se il modello di sezione non corrisponde a nessuna sezione.

--set-sezione-flags modello di sezione=bandiere
Imposta i flag per tutte le sezioni corrispondenti modello di sezione. bandiere l'argomento è una virgola
stringa separata di nomi di flag. I nomi riconosciuti sono allocare, testuali, caricare,
nessun caricamento, in sola lettura, codice, dati, rom, Sharee mettere a punto. Puoi impostare il file testuali bandiera
per una sezione che non ha contenuti, ma non ha senso cancellare il
testuali flag di una sezione che ha contenuti: rimuovi invece la sezione.
Non tutti i flag sono significativi per tutti i formati di file oggetto.

--aggiungi-sezione nomesezione=Nome del file
Aggiungi una nuova sezione denominata nomesezione durante la copia del file. I contenuti del nuovo
la sezione è presa dal file Nome del file. La dimensione della sezione sarà la dimensione di
il file. Questa opzione funziona solo su formati di file che possono supportare sezioni con
nomi arbitrari. Nota: potrebbe essere necessario utilizzare il --set-sezione-flags opzione a
impostare gli attributi della sezione appena creata.

--sezione-dump nomesezione=Nome del file
Posiziona il contenuto della sezione denominata nomesezione nel file Nome del file, sovrascrivendo
qualsiasi contenuto che potrebbe esserci stato in precedenza. Questa opzione è l'inverso di
--aggiungi-sezione. Questa opzione è simile alla --solo-sezione opzione tranne che
non crea un file formattato, scarica semplicemente il contenuto come dati binari grezzi,
senza applicare alcun trasferimento. L'opzione può essere specificata più di una volta.

--rinomina-sezione vecchio nome=nuovo nome[,bandiere]
Rinominare una sezione da vecchio nome a nuovo nome, modificando facoltativamente i flag della sezione in
bandiere nel processo. Questo ha il vantaggio rispetto all'uso di uno script linker per eseguire il
rinominare in quanto l'output rimane come file oggetto e non diventa un link
eseguibile.

Questa opzione è particolarmente utile quando il formato di input è binario, poiché questo lo farà
crea sempre una sezione chiamata .data. Se per esempio volessi invece creare un
sezione chiamata .rodata contenente dati binari puoi usare la seguente riga di comando
per raggiungerlo:

objcopy -I binario -O -B \
--rename-section .data=.rodata,alloc,load,readonly,data,contents \


--nomi-sezioni-lunghe {abilita, disabilita, mantieni}
Controlla la gestione dei nomi di sezione lunghi durante l'elaborazione di "COFF" e "PE-COFF"
formati degli oggetti. Il comportamento predefinito, mantenere, è quello di preservare i nomi delle sezioni lunghe se presenti
sono presenti nel file di input. Il enable e disable le opzioni abilitano forzatamente o
disabilitare l'uso di nomi di sezione lunghi nell'oggetto di output; quando disable è in vigore,
qualsiasi nome di sezione lungo nell'oggetto di input verrà troncato. Il enable l'opzione sarà
emettere solo nomi di sezione lunghi se presenti negli ingressi; questo è per lo più lo stesso
as mantenere, ma non è definito se il enable l'opzione potrebbe forzare la creazione
di una tabella di stringhe vuota nel file di output.

--change-leader-char
Alcuni formati di file oggetto utilizzano caratteri speciali all'inizio dei simboli. Più
un tale carattere comune è il carattere di sottolineatura, che i compilatori spesso aggiungono prima di ogni simbolo.
Questa opzione dice objcopy per cambiare il carattere principale di ogni simbolo quando
converte tra formati di file oggetto. Se i formati di file oggetto utilizzano la stessa interlinea
personaggio, questa opzione non ha effetto. Altrimenti, aggiungerà un carattere o rimuoverà a
carattere o modificare un carattere, a seconda dei casi.

--remove-leader-char
Se il primo carattere di un simbolo globale è un carattere iniziale di un simbolo speciale utilizzato
dal formato del file oggetto, rimuovere il carattere. Il simbolo più comune che porta
il carattere è sottolineato. Questa opzione rimuoverà un carattere di sottolineatura iniziale da tutto il globale
simboli. Questo può essere utile se vuoi collegare insieme oggetti di file diversi
formati con convenzioni diverse per i nomi dei simboli. Questo è diverso da
--change-leader-char perché cambia sempre il nome del simbolo quando appropriato,
indipendentemente dal formato del file oggetto del file di output.

--reverse-byte=num
Invertire i byte in una sezione con contenuto di output. La lunghezza della sezione deve essere uniforme
divisibile per il valore dato affinché lo scambio possa avvenire. Inversione
avviene prima che venga eseguito l'interleaving.

Questa opzione viene utilizzata in genere nella generazione di immagini ROM per sistemi di destinazione problematici.
Ad esempio, su alcune schede di destinazione, le parole a 32 bit recuperate dalle ROM a 8 bit vengono
assemblato in ordine di byte little-endian indipendentemente dall'ordine di byte della CPU. A seconda di
il modello di programmazione, potrebbe essere necessario modificare l'endianità della ROM.

Considera un semplice file con una sezione contenente i seguenti otto byte: 12345678.

utilizzando --reverse-byte=2 per l'esempio sopra, i byte nel file di output sarebbero
ordinato 21436587.

utilizzando --reverse-byte=4 per l'esempio sopra, i byte nel file di output sarebbero
ordinato 43218765.

Utilizzando --reverse-byte=2 per l'esempio sopra, seguito da --reverse-byte=4 sul canale
file di output, i byte nel secondo file di output verrebbero ordinati 34127856.

--srec-len=ivale
Significativo solo per l'output srec. Imposta la lunghezza massima degli Srecord in corso
prodotto per ivale. Questa lunghezza copre entrambi i campi indirizzo, dati e crc.

--srec-forceS3
Significativo solo per l'uscita srec. Evita la generazione di record S1/S2, creando solo S3
formato di registrazione.

--ridefine-sim vecchio=nuovi
Cambia il nome di un simbolo vecchio, nuovi. Questo può essere utile quando si sta provando il collegamento
due cose insieme per le quali non hai una fonte e ci sono collisioni di nomi.

--redefine-simboli=Nome del file
APPLICA --ridefine-sim ad ogni coppia di simboli"vecchio nuovi" elencato nel file Nome del file.
Nome del file è semplicemente un file flat, con una coppia di simboli per riga. I commenti di linea possono essere
introdotto dal carattere hash. Questa opzione può essere data più di una volta.

--indebolire
Cambia tutti i simboli globali nel file in modo che siano deboli. Questo può essere utile quando si costruisce un
oggetto che sarà collegato ad altri oggetti usando il -R opzione per il linker.
Questa opzione è efficace solo quando si utilizza un formato di file oggetto che supporta debole
simboli.

--keep-simboli=Nome del file
APPLICA --mantenere-simbolo opzione per ogni simbolo elencato nel file Nome del file. Nome del file is
semplicemente un file flat, con un nome di simbolo per riga. I commenti di linea possono essere introdotti da
il carattere hash. Questa opzione può essere data più di una volta.

--strip-simboli=Nome del file
APPLICA --simbolo-striscia opzione per ogni simbolo elencato nel file Nome del file. Nome del file is
semplicemente un file flat, con un nome di simbolo per riga. I commenti di linea possono essere introdotti da
il carattere hash. Questa opzione può essere data più di una volta.

--striscia-simboli-non necessari=Nome del file
APPLICA --striscia-simbolo-non-necessario opzione per ogni simbolo elencato nel file Nome del file.
Nome del file è semplicemente un file flat, con un nome di simbolo per riga. I commenti di linea possono essere
introdotto dal carattere hash. Questa opzione può essere data più di una volta.

--keep-global-simboli=Nome del file
APPLICA --keep-global-simbolo opzione per ogni simbolo elencato nel file Nome del file.
Nome del file è semplicemente un file flat, con un nome di simbolo per riga. I commenti di linea possono essere
introdotto dal carattere hash. Questa opzione può essere data più di una volta.

--localize-simboli=Nome del file
APPLICA --localize-simbolo opzione per ogni simbolo elencato nel file Nome del file. Nome del file
è semplicemente un file flat, con un nome di simbolo per riga. Potrebbero essere introdotti commenti di linea
dal carattere hash. Questa opzione può essere data più di una volta.

--globalize-simboli=Nome del file
APPLICA --globalizzare-simbolo opzione per ogni simbolo elencato nel file Nome del file. Nome del file
è semplicemente un file flat, con un nome di simbolo per riga. Potrebbero essere introdotti commenti di linea
dal carattere hash. Questa opzione può essere data più di una volta.

--simboli-indeboliti=Nome del file
APPLICA --simbolo-indebolito opzione per ogni simbolo elencato nel file Nome del file. Nome del file is
semplicemente un file flat, con un nome di simbolo per riga. I commenti di linea possono essere introdotti da
il carattere hash. Questa opzione può essere data più di una volta.

--alt-codice-macchina=Index
Se l'architettura di output ha codici macchina alternativi, utilizzare il Indexil codice invece
di quello predefinito. Questo è utile nel caso in cui a una macchina sia assegnato un codice ufficiale e
la tool-chain adotta il nuovo codice, ma altre applicazioni dipendono ancora dal
codice originale utilizzato. Per le architetture basate su ELF se il Index l'alternativa non
non esiste allora il valore viene trattato come un numero assoluto da memorizzare nel
e_machine campo dell'intestazione ELF.

--testo-scrivibile
Contrassegna il testo di output come scrivibile. Questa opzione non è significativa per tutti i file oggetto
formati.

--testo in sola lettura
Rendi il testo di output protetto da scrittura. Questa opzione non è significativa per tutti gli oggetti
formati di file.

--puro
Contrassegna il file di output come paginato su richiesta. Questa opzione non è significativa per tutti gli oggetti
formati di file.

--impuro
Contrassegna il file di output come impuro. Questa opzione non è significativa per tutti i file oggetto
formati.

--prefisso-simboli=stringa
Prefissa tutti i simboli nel file di output con stringa.

--sezioni-prefisso=stringa
Prefissa tutti i nomi delle sezioni nel file di output con stringa.

--prefisso-alloc-sezioni=stringa
Anteporre tutti i nomi di tutte le sezioni allocate nel file di output con stringa.

--add-gnu-debuglink=percorso-file
Crea una sezione .gnu_debuglink che contiene un riferimento a percorso-file e aggiunge
nel file di output.

--keep-file-simboli
Quando si rimuove un file, magari con --strip-debug or --striscia-non necessaria, conservare qualsiasi
simboli che specificano i nomi dei file di origine, che altrimenti verrebbero eliminati.

--only-keep-debug
Elimina un file, rimuovendo il contenuto di tutte le sezioni che non verrebbero eliminate da
--strip-debug e lasciando intatte le sezioni di debug. Nei file ELF, questo conserva
tutte le sezioni note nell'output.

L'intenzione è che questa opzione venga utilizzata insieme a --add-gnu-debuglink
per creare un eseguibile in due parti. Uno un binario spogliato che occuperà meno spazio
nella RAM e in una distribuzione e il secondo un file di informazioni di debug che è solo
necessario se sono richieste capacità di debug. La procedura suggerita per crearli
file è il seguente:

1.
"pippo" allora...

1.
creare un file contenente le informazioni di debug.

1.
eseguibile spogliato.

1.
per aggiungere un collegamento alle informazioni di debug nell'eseguibile spogliato.

Nota --- la scelta di ".dbg" come estensione per il file di informazioni di debug è arbitraria.
Anche il passaggio "--only-keep-debug" è facoltativo. Potresti invece fare questo:

1.
1.
1.
1.

cioè, il file puntato dal --add-gnu-debuglink può essere l'eseguibile completo. Esso
non deve essere un file creato da --only-keep-debug interruttore.

Nota---questo interruttore è inteso solo per l'uso su file completamente collegati. Non fa
senso usarlo su file oggetto in cui le informazioni di debug potrebbero essere incomplete.
Oltre alla funzione gnu_debuglink attualmente supporta solo la presenza di un nome file
contenente informazioni di debug, non più nomi di file su un file uno per oggetto
base.

--striscia-dwo
Rimuovi il contenuto di tutte le sezioni DWARF .dwo, lasciando il debug rimanente
sezioni e tutti i simboli intatti. Questa opzione è destinata all'uso da parte del compilatore come
parte -gsplit-nano opzione, che divide le informazioni di debug tra il file .o
e un file .dwo separato. Il compilatore genera tutte le informazioni di debug nello stesso
file, quindi usa il --extract-dwo opzione per copiare le sezioni .dwo nel file .dwo,
poi il --striscia-dwo opzione per rimuovere quelle sezioni dal file .o originale.

--extract-dwo
Estrai il contenuto di tutte le sezioni DWARF .dwo. Vedi il --striscia-dwo opzione per di più
informazioni.

--file-allineamento num
Specificare l'allineamento del file. Le sezioni nel file inizieranno sempre agli offset del file
che sono multipli di questo numero. Il valore predefinito è 512. [Questa opzione è specifica
a obiettivi PE.]

--mucchio prenotare
--mucchio prenotare,commettere
Specificare il numero di byte di memoria da riservare (e facoltativamente impegnare) da utilizzare come
mucchio per questo programma. [Questa opzione è specifica per i bersagli PE.]

--base-immagine APPREZZIAMO
Usa il APPREZZIAMO come indirizzo di base del tuo programma o dll. Questa è la memoria più bassa
posizione che verrà utilizzata quando viene caricato il programma o la dll. Per ridurre la necessità di
riposiziona e migliora le prestazioni delle tue DLL, ognuna dovrebbe avere un indirizzo di base univoco
e non si sovrappongono ad altre DLL. Il valore predefinito è 0x400000 per gli eseguibili e
0x10000000 per le dll. [Questa opzione è specifica per i bersagli PE.]

--allineamento-sezione num
Imposta l'allineamento della sezione. Le sezioni in memoria inizieranno sempre agli indirizzi che
sono un multiplo di questo numero. Il valore predefinito è 0x1000. [Questa opzione è specifica per PE
obiettivi.]

--pila prenotare
--pila prenotare,commettere
Specificare il numero di byte di memoria da riservare (e facoltativamente impegnare) da utilizzare come
pila per questo programma. [Questa opzione è specifica per i bersagli PE.]

--sottosistema quale
--sottosistema quale:maggiore
--sottosistema quale:maggiore.minore
Specifica il sottosistema in cui verrà eseguito il programma. I valori legali per
quale sono "native", "windows", "console", "posix", "efi-app", "efi-bsd", "efi-rtd",
"sal-rtd" e "xbox". Si può opzionalmente impostare anche la versione del sottosistema. Numerico
i valori sono accettati anche per quale. [Questa opzione è specifica per i bersagli PE.]

--estrarre-simbolo
Conserva i contrassegni e i simboli della sezione del file ma rimuovi tutti i dati della sezione. Nello specifico,
l'opzione:

*
*
*

Questa opzione è usata per costruire un .sim file per un kernel VxWorks. Può anche essere un
modo utile per ridurre la dimensione di a --solo-simboli file di input del linker.

--compress-sezioni-debug
Comprimi le sezioni di debug DWARF usando zlib.

--decomprimi-sezioni-debug
Decomprimi le sezioni di debug DWARF usando zlib.

-V
--versione
Mostra il numero di versione di objcopy.

-v
--verboso
Output dettagliato: elenca tutti i file oggetto modificati. Nel caso degli archivi, objcopy -V
elenca tutti i membri dell'archivio.

--Aiuto
Mostra un riepilogo delle opzioni per objcopy.

--Informazioni
Visualizza un elenco che mostra tutte le architetture e i formati di oggetti disponibili.

@filetto
Leggi le opzioni della riga di comando da filetto. Le opzioni lette vengono inserite al posto di
originale @filetto opzione. Se filetto non esiste o non può essere letto, allora l'opzione
saranno trattati letteralmente e non rimossi.

opzioni in filetto sono separati da spazi bianchi. Può essere incluso un carattere di spazio bianco
in un'opzione racchiudendo l'intera opzione tra virgolette singole o doppie. Qualunque
carattere (inclusa una barra rovesciata) può essere incluso anteponendo il carattere a essere
incluso con una barra rovesciata. Il filetto può contenere a sua volta @ aggiuntivifiletto opzioni; qualunque
tali opzioni verranno elaborate in modo ricorsivo.

Usa avr-objcopy online utilizzando i servizi onworks.net


Server e workstation gratuiti

Scarica app per Windows e Linux

Comandi Linux

Ad