InglésFrancésEspañol

icono de página de OnWorks

sh4-linux-gnu-objcopy: en línea en la nube

Ejecute sh4-linux-gnu-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 sh4-linux-gnu-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-depuración]
[-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]
[--localizar-oculto]
[-L nombre del símbolo|--localize-symbol =nombre del símbolo]
[--globalize-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 [amplitud]|--intercalar[=amplitud]]
[--interleave-width =anchura]
[-j patrón de sección|--only-section =patrón de sección]
[-R patrón de sección|--remove-section =patrón de sección]
[-p|--preservar-fechas]
[-D|- habilitar-archivos-deterministas]
[-U|--disable-deterministic-files]
[- depuración]
[- relleno de huecos =val]
[--pad-to =dirección]
[--set-start =val]
[--adjust-start =aumentar]
[--cambiar-direcciones =aumentar]
[--cambiar-sección-dirección patrón de sección{=, +, -}val]
[--cambiar-sección-lma patrón de sección{=, +, -}val]
[--cambiar-sección-vma patrón de sección{=, +, -}val]
[- advertencias de cambio] [--sin-cambio-advertencias]
[--establecer-sección-banderas patrón de sección=banderas]
[--add-sección Nombre de la sección=nombre de archivo]
[--sección de descarga Nombre de la sección=nombre de archivo]
[--actualizar-sección Nombre de la sección=nombre de archivo]
[--rename-sección viejo nombre=nuevo nombre[,banderas]]
[--nombres-de-sección-larga {habilitar, deshabilitar, mantener}]
[--cambiar-carácter-líder] [--remove-lead-char]
[--reverse-bytes =número]
[--srec-len =ival] [--srec-forceS3]
[--redefine-sim los ancianos =new]
[--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]
[--globalize-symbols =nombre de archivo]
[--weaken-symbols =nombre de archivo]
[--add-símbolo nombre =[.:]propuesta de[,banderas]
[--alt-machine-code =índice]
[--prefix-symbols =cadena]
[--prefix-section =cadena]
[--prefijo-alloc-secciones =cadena]
[--add-gnu-debuglink =ruta a archivo]
[--mantener-archivo-símbolos]
[--solo-mantener-depurar]
[- tira-dwo]
[--extracto-dwo]
[--extracto-símbolo]
[--texto-escribible]
[--texto-solo lectura]
[--puro]
[--impuro]
[--file-align =número]
[--heap =tamaño]
[--image-base =dirección]
[--section-align =número]
[--stack =tamaño]
[--subsystem =lo cual:gran .menor de edad]
[--compress-debug-secciones]
[--descomprimir-depurar-secciones]
[--dwarf-depth =n]
[--dwarf-start =n]
[-v|--verboso]
[-V|--versión]
[--ayuda] [--información]
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). (Sin embargo,
ver la - bytes-inversos opción.)

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
Usa 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 sin arquitectura en un archivo de objeto. En esto
caso de que la arquitectura de salida se pueda configurar en 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
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 patrón de sección
--only-section =patrón de sección
Copie solo las secciones indicadas 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. Se aceptan caracteres comodín en patrón de sección.

-R patrón de sección
--remove-section =patrón de sección
Eliminar cualquier sección que coincida patrón de sección desde el archivo de salida. Esta opción puede ser
dado más de una vez. Tenga en cuenta que el uso de esta opción de manera inapropiada puede hacer que la salida
archivo inutilizable. Se aceptan caracteres comodín en patrón de sección. Usando tanto el -j
-R las opciones juntas dan como resultado un comportamiento indefinido.

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

-g
--strip-depuración
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
Al quitar símbolos, mantenga el símbolo nombre del símbolo incluso si normalmente estaría despojado.
Esta opción puede darse 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.

--localizar-oculto
En un objeto ELF, marque todos los símbolos que tengan visibilidad interna o oculta como locales.
Esta opción se aplica además de las opciones de localización específicas del símbolo, como -L.

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

--globalize-symbol =nombre del símbolo
Dar símbolo nombre del símbolo alcance global para que sea visible fuera del archivo en
que se define. 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
Si se ha habilitado el entrelazado a través del --intercalar luego inicie el rango de
bytes para mantener en el byteº byte. byte puede estar en el rango de 0 a amplitud-1, donde
amplitud es el valor dado por el --intercalar .

-i [amplitud]
--intercalar [=amplitud]
Copie solo un rango de cada amplitud bytes. (Los datos del encabezado no se ven afectados). Seleccione
cuyo byte en el rango comienza la copia con el --byte opción. Seleccione el ancho de
el rango con el - ancho de intercalación .

Esta opción es útil para crear archivos en la ROM del programa. Normalmente se utiliza con un
destino de salida "srec". Tenga en cuenta que objcopiar se quejará si no especifica el
--byte opción también.

La amplitud de intercalación predeterminada es 4, por lo que con --byte establecido en 0, objcopiar copiaría el
primer byte de cada cuatro bytes desde la entrada hasta la salida.

--interleave-width =anchura
Cuando se usa con el --intercalar opción, copiar anchura bytes a la vez. El inicio de la
El rango de bytes que se copiarán lo establece el --byte opción, y la extensión del rango
está configurado con el --intercalar .

El valor predeterminado para esta opción es 1. El valor de anchura más el byte valor establecido por
de la forma más --byte La opción no debe exceder la amplitud de intercalación establecida por el --intercalar
.

Esta opción se puede utilizar para crear imágenes para dos flashes de 16 bits intercalados en un
Bus de 32 bits pasando -b 0 -i 4 --interleave-width = 2 -b 2 -i 4
--interleave-width = 2 a dos objcopiar comandos. Si la entrada fue '12345678', entonces el
las salidas serían '1256' y '3478' respectivamente.

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

-D
- habilitar-archivos-deterministas
Operar en determinista modo. Al copiar miembros del archivo y escribir el archivo
index, use cero para UID, GID, marcas de tiempo y use modos de archivo consistentes para todos
archivos.

If binutils fue configurado con - habilitar-archivos-deterministas, entonces este modo está activado
por defecto. Puede desactivarse con el -U opción, a continuación.

-U
--disable-deterministic-files
Do no operar en determinista modo. Esta es la inversa de la -D opción, arriba:
al copiar miembros del archivo y escribir el índice del archivo, utilice su UID, GID,
marca de tiempo y valores de modo de archivo.

Este es el valor predeterminado a menos que binutils fue configurado con
- habilitar-archivos-deterministas.

- 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 patrón de sección{=, +, -}val
--ajustar-sección-vma patrón de sección{=, +, -}val
Configure o cambie tanto la dirección VMA como la dirección LMA de cualquier sección que coincida
patrón de sección. Si = se utiliza, la dirección de la sección se establece en val. De otra manera, val is
agregado o restado de la dirección de la sección. Vea los comentarios debajo
--cambiar-direcciones, encima. Si patrón de sección no coincide con ninguna sección de la entrada
archivo, se emitirá una advertencia, a menos que --sin-cambio-advertencias se utiliza.

--cambiar-sección-lma patrón de sección{=, +, -}val
Establecer o cambiar la dirección LMA de cualquier sección que coincida patrón de sección. El LMA
dirección es la dirección donde se cargará la sección en la memoria al cargar el programa
tiempo. Normalmente es la misma que la dirección VMA, que es la dirección del
sección en tiempo de ejecución del programa, pero en algunos sistemas, especialmente aquellos en los que un programa está
mantenido en ROM, los dos pueden ser diferentes. Si = se utiliza, la dirección de la sección se establece en
val. De otra manera, val se agrega o se resta de la dirección de la sección. Ver el
comentarios debajo --cambiar-direcciones, encima. Si patrón de sección no coincide con ninguno
secciones en el archivo de entrada, se emitirá una advertencia, a menos que --sin-cambio-advertencias is
usado.

--cambiar-sección-vma patrón de sección{=, +, -}val
Establecer o cambiar la dirección VMA de cualquier sección que coincida patrón de sección. La dirección VMA
es la dirección donde se ubicará la sección una vez que el programa haya comenzado
ejecutando. Normalmente es la misma que la dirección LMA, que es la dirección donde
la sección se cargará en la memoria, pero en algunos sistemas, especialmente aquellos en los que
El programa se lleva a cabo en ROM, los dos pueden ser diferentes. Si = se utiliza, la dirección de la sección
se establece a 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 patrón de sección no coincide
cualquier sección en el archivo de entrada, 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 el patrón de sección no coincide con ninguna sección, 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 el patrón de sección no coincide con ninguna sección.

--establecer-sección-banderas patrón de sección=banderas
Establecer las banderas para cualquier sección que coincida patrón de sección. banderas el argumento es una coma
cadena separada de nombres de bandera. Los nombres reconocidos son asignar, contenido, carga,
sin carga, solo lectura, código, datos, rom, compartey depurar. Puede configurar el contenido bandera
para una sección que no tiene contenido, pero no es significativo borrar el
contenido bandera de una sección que sí tiene contenido, simplemente elimine la sección en su lugar.
No todas las marcas son significativas 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. Nota: puede que sea necesario utilizar el --establecer-sección-banderas opción de
establezca los atributos de la sección recién creada.

--sección de descarga Nombre de la sección=nombre de archivo
Coloque el contenido de la sección denominada Nombre de la sección en el archivo nombre de archivo, sobrescribiendo
cualquier contenido que pueda haber estado allí anteriormente. Esta opción es la inversa de
--add-sección. Esta opción es similar a la --sólo-sección opción excepto que
no crea un archivo formateado, simplemente vuelca el contenido como datos binarios sin procesar,
sin aplicar ninguna reubicación. La opción se puede especificar más de una vez.

--actualizar-sección Nombre de la sección=nombre de archivo
Reemplazar el contenido existente de una sección llamada Nombre de la sección con el contenido del archivo
nombre de archivo. El tamaño de la sección se ajustará al tamaño del archivo. los
banderas de sección para Nombre de la sección no se modificará. Para archivos de formato ELF, la sección
El mapeo de segmentos también permanecerá sin cambios, algo que no es posible usando
- remover-sección seguido por --add-sección. La opción se puede especificar más de
una vez.

Nota: es posible utilizar --rename-sección --actualizar-sección para actualizar y
cambiar el nombre de una sección desde una línea de comando. En este caso, pase el nombre de la sección original
a --actualizar-seccióny los nombres de las secciones originales y nuevas para --rename-sección.

--add-símbolo nombre =[.:]propuesta de[,banderas]
Agregar un nuevo símbolo llamado nombre mientras copia el archivo. Esta opción puede especificarse
varias veces. Si el . se da, el símbolo se asociará con y
relativo a esa sección, de lo contrario será un símbolo ABS. Especificando un indefinido
sección resultará en un error fatal. No hay verificación del valor, será
tomado según lo especificado. Se pueden especificar banderas de símbolo y no todas las banderas
significativo para todos los formatos de archivo de objeto. De forma predeterminada, el símbolo será global. los
bandera especial 'antes =otrosym'insertará el nuevo símbolo delante del especificado
otrosym, de lo contrario, los símbolos se agregarán al final de la tabla de símbolos en la
orden en que aparecen.

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


--nombres-de-sección-larga {habilitar, deshabilitar, mantener}
Controla el manejo de nombres de sección largos al procesar "COFF" y "PE-COFF"
formatos de objeto. El comportamiento predeterminado, keep, es preservar los nombres largos de las secciones, si los hay
están presentes en el archivo de entrada. los habilitar inhabilitar las opciones habilitan a la fuerza o
deshabilite el uso de nombres de sección largos en el objeto de salida; cuando inhabilitar está en efecto,
cualquier nombre de sección largo en el objeto de entrada se truncará. los habilitar la opción será
solo emite nombres de sección largos si hay alguno presente en las entradas; esto es casi lo mismo
as keep, pero queda indefinido si el habilitar la opción podría forzar la creación
de una tabla de cadenas vacía en el archivo de salida.

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

--reverse-bytes =número
Invierta los bytes en una sección con contenido de salida. La longitud de una sección debe ser uniforme
divisible por el valor dado para que el canje pueda tener lugar. Revertir
tiene lugar antes de que se realice el entrelazado.

Esta opción se utiliza normalmente para generar imágenes ROM para sistemas de destino problemáticos.
Por ejemplo, en algunas placas de destino, las palabras de 32 bits extraídas de las ROM de 8 bits se
ensamblado en orden de bytes little-endian independientemente del orden de bytes de la CPU. Dependiendo de
el modelo de programación, es posible que sea necesario modificar la endianidad de la ROM.

Considere un archivo simple con una sección que contiene los siguientes ocho bytes: 12345678.

Con --reverse-bytes = 2 para el ejemplo anterior, los bytes en el archivo de salida serían
ordenó 21436587.

Con --reverse-bytes = 4 para el ejemplo anterior, los bytes en el archivo de salida serían
ordenó 43218765.

Mediante el uso --reverse-bytes = 2 para el ejemplo anterior, seguido de --reverse-bytes = 4 en
archivo de salida, los bytes en el segundo archivo de salida se ordenarían 34127856.

--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 =new
Cambiar el nombre de un símbolo los ancianos , a un new. 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 new"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.

--globalize-symbols =nombre de archivo
Aplicar --símbolo-globalizado 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. Para arquitecturas basadas en ELF si el índice alternativa hace
no existe, entonces el valor se trata como un número absoluto para ser almacenado en el
campo e_machine del encabezado ELF.

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

--texto-solo lectura
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. Nota: el archivo en ruta a archivo debe existir. Parte de
El proceso de agregar la sección .gnu_debuglink implica incrustar una suma de comprobación del
contenido del archivo de información de depuración en la sección.

Si el archivo de información de depuración está construido en una ubicación pero se instalará en una
más tarde en una ubicación diferente, entonces no use la ruta a la instalación
localización. los --add-gnu-debuglink La opción fallará porque el archivo instalado no
aún no existe. En su lugar, coloque el archivo de información de depuración en el directorio actual y use el
--add-gnu-debuglink opción sin ningún componente de directorio, como este:

objcopy --add-gnu-debuglink = foo.debug

En el momento de la depuración, el depurador intentará buscar el archivo de información de depuración independiente en un
conjunto de ubicaciones conocidas. El conjunto exacto de estas ubicaciones varía según el
distribución que se está utilizando, pero normalmente incluye:

"* El mismo directorio que el ejecutable."
"* Un subdirectorio del directorio que contiene el ejecutable"
llamado .debug

"* Un directorio de depuración global como / usr / lib / debug."

Siempre que el archivo de información de depuración se haya instalado en una de estas ubicaciones antes
el depurador se ejecuta todo debería funcionar correctamente.

--mantener-archivo-símbolos
Al quitar un archivo, tal vez con --strip-depuración or - tiras innecesarias, retener cualquier
símbolos que especifican los nombres de los archivos de origen, que de otro modo se eliminarían.

--solo-mantener-depurar
Elimine un archivo, eliminando el contenido de las secciones que no serían eliminadas por
--strip-depuración y dejando intactas las secciones de depuración. En archivos ELF, esto conserva
todas las secciones de notas en la salida.

Nota: los encabezados de las secciones eliminadas se conservan, incluidos sus
tamaños, pero el contenido de la sección se descarta. Los encabezados de las secciones son
preservado para que otras herramientas puedan hacer coincidir el archivo debuginfo con el real
ejecutable, incluso si ese ejecutable se ha reubicado en un espacio de direcciones diferente.

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. Eso
no tiene que ser un archivo creado por el --solo-mantener-depurar switch.

Nota: este modificador solo está diseñado para su uso en archivos completamente vinculados. No hace
Tiene sentido usarlo en archivos objeto donde la información de depuración puede estar incompleta.
Además, la función gnu_debuglink actualmente solo admite la presencia de un nombre de archivo
que contiene información de depuración, no varios nombres de archivo en un archivo de uno por objeto
base.

- tira-dwo
Elimine el contenido de todas las secciones DWARF .dwo, dejando la depuración restante
secciones y todos los símbolos intactos. Esta opción está pensada para que la utilice el compilador como
parte del -gsplit-enano opción, que divide la información de depuración entre el archivo .o
y un archivo .dwo separado. El compilador genera toda la información de depuración en el mismo
archivo, luego usa el --extracto-dwo opción para copiar las secciones .dwo al archivo .dwo,
entonces el - tira-dwo opción para eliminar esas secciones del archivo .o original.

--extracto-dwo
Extraiga el contenido de todas las secciones DWARF .dwo. Ver el - tira-dwo opción para más


- alineación de archivos número
Especifique la alineación del archivo. Las secciones del archivo siempre comenzarán en las compensaciones del archivo.
que son múltiplos de este número. Este valor predeterminado es 512. [Esta opción es específica
a los objetivos de PE.]

--montón reserva
--montón reserva,hacer
Especifique el número de bytes de memoria para reservar (y, opcionalmente, confirmar) para usar como
montón para este programa. [Esta opción es específica para los objetivos de EP].

--imagen-base propuesta de
Usa propuesta de como la dirección base de su programa o dll. Este es el recuerdo más bajo
ubicación que se utilizará cuando se cargue su programa o dll. Para reducir la necesidad de
reubicar y mejorar el rendimiento de sus dlls, cada uno debe tener una dirección base única
y no se superponga a ningún otro dll. El valor predeterminado es 0x400000 para ejecutables y
0x10000000 para dlls. [Esta opción es específica para los objetivos de EP].

- alineación de sección número
Establece la alineación de la sección. Las secciones en la memoria siempre comenzarán en las direcciones que
son un múltiplo de este número. El valor predeterminado es 0x1000. [Esta opción es específica para la educación física
objetivos.]

--apilar reserva
--apilar reserva,hacer
Especifique el número de bytes de memoria para reservar (y, opcionalmente, confirmar) para usar como
pila para este programa. [Esta opción es específica para los objetivos de EP].

--subsistema lo cual
--subsistema lo cual:gran
--subsistema lo cual:gran .menor de edad
Especifica el subsistema bajo el cual se ejecutará su programa. Los valores legales para
lo cual son "nativo", "windows", "consola", "posix", "efi-app", "efi-bsd", "efi-rtd",
"sal-rtd" y "xbox". Opcionalmente, también puede configurar la versión del subsistema. Numérico
también se aceptan valores para lo cual. [Esta opción es específica para los objetivos de EP].

--extracto-símbolo
Conserve las banderas y los símbolos de la sección del archivo, pero elimine todos los datos de la sección. Específicamente,
la opción:

*
*
*

Esta opción se usa para construir un .sim archivo para un kernel de VxWorks. También puede ser un
forma útil de reducir el tamaño de un --sólo-símbolos archivo de entrada del vinculador.

--compress-debug-secciones
Comprima las secciones de depuración de DWARF usando zlib con SHF_COMPRESSED de ELF ABI. Nota -
si la compresión realmente haría una sección mayores, entonces no está comprimido.

--compress-debug-section = ninguno
--compress-debug-section = zlib
--compress-debug-section = zlib-gnu
--compress-debug-section = zlib-gabi
Para los archivos ELF, estas opciones controlan cómo se comprimen las secciones de depuración de DWARF.
--compress-debug-section = ninguno es equivalente a --descomprimir-depurar-secciones.
--compress-debug-section = zlib --compress-debug-section = zlib-gabi son equivalentes
a --compress-debug-secciones. --compress-debug-section = zlib-gnu comprime enano
depurar secciones usando zlib. Las secciones de depuración se renombran para empezar. .zdebug
en lugar de .depurar. Nota: si la compresión realmente haría una sección mayores, entonces
no se comprime ni se le cambia el nombre.

--descomprimir-depurar-secciones
Descomprima las secciones de depuración de DWARF usando zlib. Los nombres de las secciones originales del
Se restauran las secciones comprimidas.

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

--información
Muestra una lista que muestra todas las arquitecturas y formatos de objeto disponibles.

@presentar
Leer las opciones de la línea de comandos de presentar. Las opciones leídas se insertan en lugar del
originales @presentar opción. Si presentar no existe, o no se puede leer, entonces la opción
se tratará literalmente y no se eliminará.

Las opciones en presentar están separados por espacios en blanco. Se puede incluir un carácter de espacio en blanco
en una opción rodeando toda la opción entre comillas simples o dobles. Alguna
El carácter (incluida una barra invertida) se puede incluir anteponiendo el carácter que se
incluido con una barra invertida. los presentar puede contener en sí mismo @presentar opciones; alguna
dichas opciones se procesarán de forma recursiva.

Use sh4-linux-gnu-objcopy en línea usando los servicios de onworks.net


Servidores y estaciones de trabajo gratuitos

Descargar aplicaciones de Windows y Linux

Comandos de Linux

Ad