InglésFrancésEspañol

Ejecutar servidores | Ubuntu > | Fedora > |


icono de página de OnWorks

h8300-hms-objcopy: en línea en la nube

Ejecute h8300-hms-objcopy en el proveedor de alojamiento gratuito de OnWorks sobre Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS

Este es el comando h8300-hms-objcopy que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.

PROGRAMA:

NOMBRE


objcopy - copiar y traducir archivos de objeto

SINOPSIS


objcopiar [-F bfdnombre--target =bfdnombre]
[-I bfdnombre--input-target =bfdnombre]
[-O bfdnombre--output-target =bfdnombre]
[-B bfdarch--arquitectura-binaria =bfdarch]
[-S--despojar-todo]
[-g--strip-debug]
[-K nombre del símbolo--keep-symbol =nombre del símbolo]
[-N nombre del símbolo--strip-symbol =nombre del símbolo]
[--strip-inneceseded-symbol =nombre del símbolo]
[-G nombre del símbolo--keep-global-symbol =nombre del símbolo]
[-L nombre del símbolo--localize-symbol =nombre del símbolo]
[-W nombre del símbolo- símbolo-debilitado =nombre del símbolo]
[-w--comodín]
[-x--descartar todo]
[-X--discard-locales]
[-b byte--byte =byte]
[-i intercalar--interleave =intercalar]
[-j Nombre de la sección--only-section =Nombre de la sección]
[-R Nombre de la sección--remove-section =Nombre de la sección]
[-p--preservar-fechas]
[- depuración]
[- relleno de huecos =val]
[--pad-to =dirección]
[--set-start =val]
[--adjust-start =aumentar]
[--cambiar-direcciones =aumentar]
[--cambiar-sección-dirección .{=, +, -}val]
[--cambiar-sección-lma .{=, +, -}val]
[--cambiar-sección-vma .{=, +, -}val]
[- advertencias de cambio] [--sin-cambio-advertencias]
[--establecer-sección-banderas .=banderas]
[--add-sección Nombre de la sección=nombre de archivo]
[--rename-sección viejo nombre=nuevo nombre[,banderas]]
[--cambiar-carácter-líder] [--remove-lead-char]
[--srec-len =ival] [--srec-forceS3]
[--redefine-sim los ancianos =Un nuevo]
[--redefine-syms =nombre de archivo]
[--debilitar]
[--keep-symbols =nombre de archivo]
[--strip-symbols =nombre de archivo]
[--strip-inneceseded-symbols =nombre de archivo]
[--keep-global-symbols =nombre de archivo]
[--localize-symbols =nombre de archivo]
[--weaken-symbols =nombre de archivo]
[--alt-machine-code =índice]
[--prefix-symbols =cadena]
[--prefix-section =cadena]
[--prefijo-alloc-secciones =cadena]
[--add-gnu-debuglink =ruta a archivo]
[--solo-mantener-depurar]
[--texto-escribible]
[--readonly-text]
[--puro]
[--impuro]
[-v--verboso]
[-V--versión]
[--ayuda] [--info]
en archivo [archivar]

DESCRIPCIÓN


El GNU objcopiar La utilidad copia el contenido de un archivo de objeto a otro. objcopiar usos
la biblioteca GNU BFD para leer y escribir los archivos de objetos. Puede escribir el destino
archivo de objeto en un formato diferente al del archivo de objeto de origen. El comportamiento exacto
of objcopiar está controlado por las opciones de la línea de comandos. Tenga en cuenta que objcopiar debe ser capaz de
copie un archivo completamente vinculado entre dos formatos cualesquiera. Sin embargo, copiar un objeto reubicable
Es posible que el archivo entre dos formatos no funcione como se esperaba.

objcopiar crea archivos temporales para hacer sus traducciones y luego los borra.
objcopiar utiliza BFD para hacer todo su trabajo de traducción; tiene acceso a todos los formatos
descrito en BFD y, por lo tanto, es capaz de reconocer la mayoría de los formatos sin que se le indique explícitamente.

objcopiar se puede utilizar para generar registros S utilizando un objetivo de salida de srec (p. ej., use -O
srec).

objcopiar se puede utilizar para generar un archivo binario sin procesar utilizando un destino de salida de binario
(p. ej., use -O binario) Cuando objcopiar genera un archivo binario sin procesar, esencialmente
producir un volcado de memoria del contenido del archivo de objeto de entrada. Todos los símbolos y
la información de reubicación será descartada. El volcado de memoria comenzará en la dirección de carga
de la sección más baja copiada en el archivo de salida.

Al generar un registro S o un archivo binario sin formato, puede resultar útil utilizar -S para eliminar
secciones que contienen información de depuración. En algunos casos -R será útil para eliminar
secciones que contienen información que no es necesaria para el archivo binario.

Nota---objcopiar no puede cambiar el endianness de sus archivos de entrada. Si la entrada
el formato tiene endianidad (algunos formatos no), objcopiar solo puede copiar las entradas en un archivo
formatos que tienen la misma endianidad o que no tienen endianidad (p. ej., srec).

OPCIONES


en archivo
archivar
Los archivos de entrada y salida, respectivamente. Si no especifica archivar, objcopiar
crea un archivo temporal y renombra destructivamente el resultado con el nombre de en archivo.

-I bfdnombre
--input-target =bfdnombre
Considere que el formato del objeto del archivo de origen es bfdnombre, en lugar de intentar
deducirlo.

-O bfdnombre
--output-target =bfdnombre
Escribe el archivo de salida usando el formato de objeto bfdnombre.

-F bfdnombre
--target =bfdnombre
Utiliza bfdnombre como formato de objeto tanto para el archivo de entrada como para el de salida; es decir, simplemente
transferir datos de origen a destino sin traducción.

-B bfdarch
--arquitectura-binaria =bfdarch
Útil para transformar un archivo de entrada binario sin formato en un archivo de objeto. En este caso
la arquitectura de salida se puede configurar para bfdarch. Esta opción se ignorará si el
archivo de entrada tiene un conocido bfdarch. Puede acceder a estos datos binarios dentro de un programa mediante
haciendo referencia a los símbolos especiales que se crean mediante el proceso de conversión. Estas
los símbolos se llaman _binary_archivoobj_inicio, _binario_archivoobj_fin y
_binario_archivoobj_Talla. por ejemplo, puede transformar un archivo de imagen en un archivo de objeto y
luego acceda a él en su código usando estos símbolos.

-j Nombre de la sección
--only-section =Nombre de la sección
Copie solo la sección nombrada del archivo de entrada al archivo de salida. Esta opción puede
administrarse más de una vez. Tenga en cuenta que el uso de esta opción de manera inapropiada puede hacer que el
archivo de salida inutilizable.

-R Nombre de la sección
--remove-section =Nombre de la sección
Eliminar cualquier sección llamada Nombre de la sección del archivo de salida. Esta opción puede darse
mas de una vez. Tenga en cuenta que el uso de esta opción de manera inapropiada puede hacer que el archivo de salida
inutilizable.

-S
--despojar-todo
No copie la información de reubicación y símbolos del archivo de origen.

-g
--strip-debug
No copie los símbolos o secciones de depuración del archivo de origen.

- tiras innecesarias
Elimine todos los símbolos que no sean necesarios para el proceso de reubicación.

-K nombre del símbolo
--keep-symbol =nombre del símbolo
Copiar solo símbolo nombre del símbolo desde el archivo de origen. Esta opción puede tener más de
una vez.

-N nombre del símbolo
--strip-symbol =nombre del símbolo
No copie el símbolo nombre del símbolo desde el archivo de origen. Esta opción puede tener más
de una vez

--strip-inneceseded-symbol =nombre del símbolo
No copie el símbolo nombre del símbolo desde el archivo de origen a menos que lo necesite un
reubicación. Esta opción puede darse más de una vez.

-G nombre del símbolo
--keep-global-symbol =nombre del símbolo
Mantener solo el símbolo nombre del símbolo global. Haga que todos los demás símbolos sean locales en el archivo, de modo que
no son visibles externamente. Esta opción puede darse más de una vez.

-L nombre del símbolo
--localize-symbol =nombre del símbolo
Hacer símbolo nombre del símbolo local al archivo, de modo que no sea visible externamente. Esta
La opción se puede dar más de una vez.

-W nombre del símbolo
- símbolo-debilitado =nombre del símbolo
Hacer símbolo nombre del símbolo débil. Esta opción puede darse más de una vez.

-w
--comodín
Permitir expresiones regulares en nombre del símboloSe utiliza en otras opciones de la línea de comandos. los
Los operadores de signo de interrogación (?), asterisco (*), barra invertida (\) y corchetes ([]) pueden
utilizarse en cualquier parte del nombre del símbolo. Si el primer carácter del nombre del símbolo es el
signo de exclamación (!) entonces el sentido del interruptor se invierte para ese símbolo. Para
ejemplo:

-w -W! foo -W fo *

haría que objcopy debilitara todos los símbolos que comienzan con `` fo '' excepto el símbolo
`` foo ''.

-x
--descartar todo
No copie símbolos no globales del archivo de origen.

-X
--discard-locales
No copie los símbolos locales generados por el compilador. (Por lo general, comienzan con L or ..)

-b byte
--byte =byte
Mantenga solo cada byteth byte del archivo de entrada (los datos del encabezado no se ven afectados). byte puede
estar en el rango de 0 a intercalar-1, donde intercalar es dado por el -i or
--intercalar opción, o el valor predeterminado de 4. Esta opción es útil para crear archivos
ROM del programa. Normalmente se utiliza con un objetivo de salida "srec".

-i intercalar
--interleave =intercalar
Copie solo uno de cada intercalar bytes. Seleccione qué byte copiar con el -b or
--byte opción. El valor predeterminado es 4. objcopiar ignora esta opción si no especifica
ya sea -b or --byte.

-p
--preservar-fechas
Configure las fechas de acceso y modificación del archivo de salida para que sean las mismas que las de
el archivo de entrada.

- depuración
Convierta la información de depuración, si es posible. Este no es el valor predeterminado porque solo
Se admiten ciertos formatos de depuración, y el proceso de conversión puede tardar
consumidor.

--Relleno val
Rellene los espacios entre las secciones con val. Esta operación se aplica al carga dirección (MLA)
de las secciones. Se hace aumentando el tamaño de la sección con la parte inferior.
dirección, y completando el espacio extra creado con val.

--pad-a dirección
Rellene el archivo de salida hasta la dirección de carga dirección. Esto se hace aumentando el
tamaño de la última sección. El espacio extra se rellena con el valor especificado por
--Relleno (cero por defecto).

--seleccione arranque val
Establezca la dirección de inicio del nuevo archivo en val. No todos los formatos de archivo de objeto son compatibles
establecer la dirección de inicio.

--cambio-inicio aumentar
--just-start aumentar
Cambie la dirección de inicio agregando aumentar. No todos los formatos de archivo de objeto admiten la configuración
la dirección de inicio.

--cambiar-direcciones aumentar
--ajustar-vma aumentar
Cambie las direcciones VMA y LMA de todas las secciones, así como la dirección de inicio, por
la adición de aumentar. Algunos formatos de archivos de objetos no permiten cambiar las direcciones de las secciones
arbitrariamente. Tenga en cuenta que esto no reubica las secciones; si el programa espera
secciones que se cargarán en una determinada dirección, y esta opción se utiliza para cambiar la
secciones de modo que se carguen en una dirección diferente, el programa puede fallar.

--cambiar-sección-dirección .{=, +, -}val
--ajustar-sección-vma .{=, +, -}val
Configure o cambie tanto la dirección VMA como la dirección LMA del nombre .. Si = is
utilizado, la dirección de la sección se establece en val. De otra manera, val se suma o resta
de la dirección de la sección. Vea los comentarios debajo --cambiar-direcciones, encima. Si
. no existe en el archivo de entrada, se emitirá una advertencia, a menos que
--sin-cambio-advertencias se utiliza.

--cambiar-sección-lma .{=, +, -}val
Establecer o cambiar la dirección LMA del nombre .. La dirección LMA es la dirección
donde la sección se cargará en la memoria en el momento de la carga del programa. Normalmente esto es
la misma que la dirección VMA, que es la dirección de la sección en el tiempo de ejecución del programa,
pero en algunos sistemas, especialmente aquellos donde un programa se mantiene en ROM, los dos pueden ser
diferente. Si = se utiliza, la dirección de la sección se establece en val. De otra manera, val está agregado
ao restado de la dirección de la sección. Vea los comentarios debajo --cambiar-direcciones,
encima. Si . no existe en el archivo de entrada, se emitirá una advertencia, a menos que
--sin-cambio-advertencias se utiliza.

--cambiar-sección-vma .{=, +, -}val
Establecer o cambiar la dirección VMA del nombre .. La dirección VMA es la dirección
donde se ubicará la sección una vez que el programa haya comenzado a ejecutarse. Normalmente
esta es la misma que la dirección LMA, que es la dirección donde se ubicará la sección
cargado en la memoria, pero en algunos sistemas, especialmente aquellos donde un programa se mantiene en
ROM, los dos pueden ser diferentes. Si = se utiliza, la dirección de la sección se establece en val.
De lo contrario, val se agrega o se resta de la dirección de la sección. Ver los comentarios
bajo el Tema G: Cómo recibir pagos por adelantado del crédito tributario por hijos --cambiar-direcciones, encima. Si . no existe en el archivo de entrada, un
se emitirá una advertencia, a menos que --sin-cambio-advertencias se utiliza.

- advertencias de cambio
--adjust-advertencias
If --cambiar-sección-dirección or --cambiar-sección-lma or --cambiar-sección-vma es usado
y la sección nombrada no existe, emita una advertencia. Este es el predeterminado.

--sin-cambio-advertencias
--no-ajustar-advertencias
No emita una advertencia si --cambiar-sección-dirección or --ajustar-sección-lma or
--ajustar-sección-vma se utiliza, incluso si la sección nombrada no existe.

--establecer-sección-banderas .=banderas
Establecer las banderas para la sección nombrada. los banderas el argumento es una cadena separada por comas
de nombres de banderas. Los nombres reconocidos son asignar, contenido, carga, sin carga, solo lectura,
código, datos, rom, compartiry depurar. Puede configurar el contenido bandera para una sección que
no tiene contenido, pero no tiene sentido borrar el contenido bandera de un
sección que tiene contenido, simplemente elimine la sección en su lugar. No todas las banderas son
significativo para todos los formatos de archivo de objeto.

--add-sección Nombre de la sección=nombre de archivo
Agrega una nueva sección llamada Nombre de la sección mientras copia el archivo. El contenido de la nueva
sección se toman del archivo nombre de archivo. El tamaño de la sección será el tamaño de
el archivo. Esta opción solo funciona en formatos de archivo que pueden admitir secciones con
nombres arbitrarios.

--rename-sección viejo nombre=nuevo nombre[,banderas]
Cambiar el nombre de una sección de viejo nombre a nuevo nombre, cambiando opcionalmente las banderas de la sección a
banderas en el proceso. Esto tiene la ventaja sobre el uso de un script enlazador para realizar la
cambiar el nombre en el sentido de que la salida permanece como un archivo de objeto y no se convierte en un enlace
ejecutable.

Esta opción es particularmente útil cuando el formato de entrada es binario, ya que esto
siempre cree una sección llamada .data. Si, por ejemplo, deseaba crear un
sección llamada .rodata que contiene datos binarios, puede usar la siguiente línea de comando
para lograrlo:

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


--cambiar-carácter-líder
Algunos formatos de archivo de objeto utilizan caracteres especiales al comienzo de los símbolos. Lo mas
El carácter común de este tipo es el subrayado, que los compiladores suelen añadir antes de cada símbolo.
Esta opción dice objcopiar para cambiar el carácter principal de cada símbolo cuando
convierte entre formatos de archivo de objeto. Si los formatos de archivo de objeto utilizan el mismo
carácter, esta opción no tiene ningún efecto. De lo contrario, agregará un carácter o eliminará un
personaje, o cambiar un personaje, según corresponda.

--remove-lead-char
Si el primer carácter de un símbolo global es un símbolo especial, se utiliza un carácter inicial
por el formato de archivo de objeto, elimine el carácter. El símbolo más común que lleva
el carácter está subrayado. Esta opción eliminará un subrayado inicial de todos los
símbolos. Esto puede ser útil si desea vincular objetos de diferentes archivos.
formatos con diferentes convenciones para los nombres de los símbolos. Esto es diferente de
--cambiar-carácter-líder porque siempre cambia el nombre del símbolo cuando es apropiado,
independientemente del formato de archivo de objeto del archivo de salida.

--srec-len =ival
Solo es significativo para la salida srec. Establezca la longitud máxima de los Srecords que se
producido para ival. Esta longitud cubre los campos de dirección, datos y crc.

--srec-forceS3
Solo es significativo para la salida srec. Evite la generación de registros S1 / S2, creando solo S3
formato de registro.

--redefine-sim los ancianos =Un nuevo
Cambiar el nombre de un símbolo los ancianos , a un Un nuevo. Esto puede resultar útil cuando se intenta un enlace
dos cosas juntas para las que no tiene fuente, y hay colisiones de nombres.

--redefine-syms =nombre de archivo
Aplicar --redefine-sim a cada par de símbolos "los ancianos Un nuevo"listado en el archivo nombre de archivo.
nombre de archivo es simplemente un archivo plano, con un par de símbolos por línea. Los comentarios de línea pueden ser
introducido por el carácter hash. Esta opción puede darse más de una vez.

--debilitar
Cambie todos los símbolos globales del archivo para que sean débiles. Esto puede resultar útil al crear un
objeto que se vinculará con otros objetos utilizando el -R opción al enlazador.
Esta opción solo es efectiva cuando se utiliza un formato de archivo de objeto que admita
símbolos.

--keep-symbols =nombre de archivo
Aplicar - símbolo de mantenimiento opción a cada símbolo listado en el archivo nombre de archivo. nombre de archivo is
simplemente un archivo plano, con un nombre de símbolo por línea. Los comentarios de línea pueden ser introducidos por
el carácter hash. Esta opción puede darse más de una vez.

--strip-symbols =nombre de archivo
Aplicar --símbolo de tira opción a cada símbolo listado en el archivo nombre de archivo. nombre de archivo is
simplemente un archivo plano, con un nombre de símbolo por línea. Los comentarios de línea pueden ser introducidos por
el carácter hash. Esta opción puede darse más de una vez.

--strip-inneceseded-symbols =nombre de archivo
Aplicar --strip-inneceseded-symbol opción a cada símbolo listado en el archivo nombre de archivo.
nombre de archivo es simplemente un archivo plano, con un nombre de símbolo por línea. Los comentarios de línea pueden ser
introducido por el carácter hash. Esta opción puede darse más de una vez.

--keep-global-symbols =nombre de archivo
Aplicar --mantener-simbolo-global opción a cada símbolo listado en el archivo nombre de archivo.
nombre de archivo es simplemente un archivo plano, con un nombre de símbolo por línea. Los comentarios de línea pueden ser
introducido por el carácter hash. Esta opción puede darse más de una vez.

--localize-symbols =nombre de archivo
Aplicar --localizar-símbolo opción a cada símbolo listado en el archivo nombre de archivo. nombre de archivo
es simplemente un archivo plano, con un nombre de símbolo por línea. Se pueden introducir comentarios de línea
por el carácter hash. Esta opción puede darse más de una vez.

--weaken-symbols =nombre de archivo
Aplicar --símbolo de debilitamiento opción a cada símbolo listado en el archivo nombre de archivo. nombre de archivo is
simplemente un archivo plano, con un nombre de símbolo por línea. Los comentarios de línea pueden ser introducidos por
el carácter hash. Esta opción puede darse más de una vez.

--alt-machine-code =índice
Si la arquitectura de salida tiene códigos de máquina alternativos, utilice el índiceel código en su lugar
del predeterminado. Esto es útil en caso de que a una máquina se le asigne un código oficial y
la cadena de herramientas adopta el nuevo código, pero otras aplicaciones aún dependen de la
se está utilizando el código original.

--texto-escribible
Marque el texto de salida como escribible. Esta opción no es significativa para todos los archivos de objetos.
formatos.

--readonly-text
Haga que el texto de salida esté protegido contra escritura. Esta opción no es significativa para todos los objetos.
formatos de archivo.

--puro
Marque el archivo de salida como paginado por demanda. Esta opción no es significativa para todos los objetos.
formatos de archivo.

--impuro
Marque el archivo de salida como impuro. Esta opción no es significativa para todos los archivos de objetos.
formatos.

--prefix-symbols =cadena
Prefije todos los símbolos en el archivo de salida con cadena.

--prefix-section =cadena
Prefije todos los nombres de las secciones en el archivo de salida con cadena.

--prefijo-alloc-secciones =cadena
Prefije todos los nombres de todas las secciones asignadas en el archivo de salida con cadena.

--add-gnu-debuglink =ruta a archivo
Crea una sección .gnu_debuglink que contiene una referencia a ruta a archivo y agrega
en el archivo de salida.

--solo-mantener-depurar
Quite un archivo, quitando las secciones que serían quitadas por --strip-debug y
dejando las secciones de depuración.

La intención es que esta opción se utilice junto con --add-gnu-debuglink
para crear un ejecutable de dos partes. Uno un binario despojado que ocupará menos espacio
en RAM y en una distribución y el segundo un archivo de información de depuración que es solo
necesario si se requieren capacidades de depuración. El procedimiento sugerido para crear estos
archivos es el siguiente:

1.
"foo" entonces ...

1.
cree un archivo que contenga la información de depuración.

1.
ejecutable despojado.

1.
para agregar un enlace a la información de depuración en el ejecutable eliminado.

Nota: la elección de ".dbg" como extensión para el archivo de información de depuración es arbitraria.
Además, el paso "--only-keep-debug" es opcional. En su lugar, podría hacer esto:

1.
1.
1.
1.

es decir, el archivo al que apunta el --add-gnu-debuglink puede ser el ejecutable completo. Lo hace
no tiene que ser un archivo creado por el --solo-mantener-depurar interruptor.

-V
--versión
Muestra el número de versión de objcopiar.

-v
--verboso
Salida detallada: enumera todos los archivos objeto modificados. En el caso de archivos, objcopiar -V
enumera todos los miembros del archivo.

--ayuda
Muestre un resumen de las opciones para objcopiar.

--info
Muestra una lista que muestra todas las arquitecturas y formatos de objeto disponibles.

Utilice h8300-hms-objcopy en línea utilizando los servicios de onworks.net


Ad


Ad