IngleseFranceseSpagnolo

Ad


Favicon di OnWorks

h8300-hms-objcopy - Online nel cloud

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

Questo è il comando h8300-hms-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]
[-L nomesimbolo--localize-simbolo=nomesimbolo]
[-W nomesimbolo--simbolo-indebolito=nomesimbolo]
[-w--carta jolly]
[-x--scarta-tutto]
[-X--discard-locals]
[-b byte--byte=byte]
[-i intercalare--interfoglio=intercalare]
[-j nomesezione--solo-sezione=nomesezione]
[-R nomesezione--remove-sezione=nomesezione]
[-p--preserve-date]
[--debug]
[--riempi-gap=val]
[--pad-a=indirizzo]
[--set-inizio=val]
[--regola-inizio=aumento]
[--change-address=aumento]
[--cambia-indirizzo-sezione pagina{=,+,-}val]
[--change-sezione-lma pagina{=,+,-}val]
[--change-sezione-vma pagina{=,+,-}val]
[--avvisi-cambiamento] [--avvisi-nessun-cambiamento]
[--set-sezione-flags pagina=bandiere]
[--aggiungi-sezione nomesezione=Nome del file]
[--rinomina-sezione vecchio nome=nuovo nome[,bandiere]]
[--change-leader-char] [--remove-leader-char]
[--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]
[--simboli-indeboliti=Nome del file]
[--alt-codice-macchina=Index]
[--prefisso-simboli=stringa]
[--sezioni-prefisso=stringa]
[--prefisso-alloc-sezioni=stringa]
[--add-gnu-debuglink=percorso-file]
[--only-keep-debug]
[--testo-scrivibile]
[--testo in sola lettura]
[--puro]
[--impuro]
[-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).

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 binario grezzo in un file oggetto. In questo caso
l'architettura di output può essere impostata su bfdarch. Questa opzione verrà ignorata se il
il file di input ha un noto bfdarch. Puoi accedere a questi dati binari all'interno di un programma da
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 nomesezione
--solo-sezione=nomesezione
Copia solo la sezione denominata dal file di input al file di output. Questa opzione potrebbe
essere somministrato più di una volta. Nota che l'utilizzo di questa opzione in modo inappropriato potrebbe rendere il
file di output inutilizzabile.

-R nomesezione
--remove-sezione=nomesezione
Rimuovi qualsiasi sezione denominata nomesezione dal file di output. Questa opzione può essere data
più di una volta. Nota che l'utilizzo di questa opzione in modo inappropriato potrebbe rendere il file di output
inutilizzabile.

-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
Copia solo simbolo nomesimbolo dal file sorgente. 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.

-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.

-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
Tieni solo ogni byteesimo byte del file di input (i dati dell'intestazione non sono interessati). byte può
essere nell'intervallo da 0 a intercalare-1, dove intercalare è dato dal -i or
--interlacciare o il valore predefinito di 4. Questa opzione è utile per creare file da
programma ROM. Viene in genere utilizzato con un target di output "srec".

-i intercalare
--interfoglio=intercalare
Copia solo uno su ogni intercalare byte. Seleziona quale byte copiare con il -b or
--byte opzione. Il valore predefinito è 4. objcopy ignora questa opzione se non la specifichi
o -b or --byte.

-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.

--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 pagina{=,+,-}val
--regolare-sezione-vma pagina{=,+,-}val
Imposta o modifica sia l'indirizzo VMA che l'indirizzo LMA del nome pagina. Se = is
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
pagina non esiste nel file di input, verrà emesso un avviso, a meno che
--avvisi-nessun-cambiamento viene utilizzato.

--change-sezione-lma pagina{=,+,-}val
Imposta o modifica l'indirizzo LMA del nominato pagina. L'indirizzo LMA è l'indirizzo
dove la sezione verrà caricata in memoria al momento del caricamento del programma. Normalmente questo è
lo stesso dell'indirizzo VMA, che è l'indirizzo della sezione in fase di esecuzione del programma,
ma su alcuni sistemi, specialmente quelli in cui un programma è contenuto in ROM, i due possono essere
diverso. Se = viene utilizzato, l'indirizzo della sezione è impostato su val. Altrimenti, val è aggiunto
a o sottratto dall'indirizzo della sezione. Vedi i commenti sotto --cambia-indirizzi,
sopra. Se pagina non esiste nel file di input, verrà emesso un avviso, a meno che
--avvisi-nessun-cambiamento viene utilizzato.

--change-sezione-vma pagina{=,+,-}val
Imposta o modifica l'indirizzo VMA del nominato pagina. L'indirizzo VMA è l'indirizzo
dove si troverà la sezione una volta avviata l'esecuzione del programma. Normalmente
questo è lo stesso dell'indirizzo LMA, che è l'indirizzo in cui sarà la sezione
caricato in memoria, ma su alcuni sistemi, specialmente quelli in cui è contenuto un programma
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
per --cambia-indirizzi, sopra. Se pagina non esiste nel file di input, a
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 la sezione denominata non esiste, emettere un avviso. Questa è l'impostazione predefinita.

--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 la sezione denominata non esiste.

--set-sezione-flags pagina=bandiere
Imposta i flag per la sezione denominata. Il bandiere l'argomento è una stringa separata da virgole
dei nomi delle bandiere. I nomi riconosciuti sono allocare, testuali, caricare, nessun caricamento, in sola lettura,
codice, dati, rom, Sharee mettere a punto. Puoi impostare il file testuali flag per una sezione che
non ha contenuti, ma non ha senso cancellare il testuali bandiera di a
sezione che ha contenuti: rimuovi invece la sezione. Non tutte le bandiere lo sono
significativo 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.

--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 \


--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.

--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.

--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.

--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.

--only-keep-debug
Elimina un file, rimuovendo tutte le sezioni che verrebbero eliminate da --strip-debug ed
lasciando le sezioni di debug.

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. lo fa
non deve essere un file creato da --only-keep-debug interruttore.

-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.

Usa h8300-hms-objcopy online utilizzando i servizi onworks.net


Server e workstation gratuiti

Scarica app per Windows e Linux

Comandi Linux

Ad