• objcopy


    objcopy

    objcopy [options] infile [outfile]

    Copy the contents of the input object file to another file, optionally changing the file format in the process (but not the endian-ness). If outfile is not specified, objcopy creates a temporary file and renames it to infile when the copy is complete, destroying the original input file. The GNU Binary File Descriptor (BFD) library is used to read and write the object files.

    Options

    --add-section section=file

    Add a new section to the output object file with the specified section name and the contents taken from the specified file. Available only for formats that allow arbitrarily named sections.

    --alt-machine-code=n

    If the output architecture has alternate machine codes, use the nth code instead of the default.

    -b n, --byte=n

    Copy only every nth byte. Header data is not affected. The value of n can be from 0 to interleave-1, where interleave is specified by -i(default is 4). This option is useful for creating files to program ROM and is typically used with srec as the output format.

    -B bfdarch, --binary-architecture=bfdarch

    Set the output architecture to bfdarch (e.g., i386) for transforming a raw binary file into an object file. Otherwise, this option is ignored. After the conversion, your program can access data inside the created object file by referencing the special symbols _binary_objfile_start,_binary_objfile_end, and _binary_objfile_size.

    --change-addresses=incr, --adjust-vma=incr

    Change the VMA and LMA addresses of all sections, plus the start address, by adding incr. Changing section addresses is not supported by all object formats. Sections are not relocated.

    --change-leading-char

    For object formats that use a special character (such as an underscore) to begin symbols, change the leading character when converting between formats. If the character is the same in both formats, the option has no effect. Otherwise, it adds, removes, or changes the leading character as appropriate for the output format.

    --change-section-address section{=|+|-}val,--adjust-section-vma section{=|+|-}val

    Set or change the VMA and LMA addresses of the specified section. With =, set the section address to the specified value; otherwise, add or subtract the value to get the new address.

    --change-section-lma section{=|+|-}val

    Set or change the LMA address of the specified section. With =, set the section address to the specified value; otherwise, add or subtract the value to get the new address.

    --change-section-vma section{=|+|-}val

    Set or change the VMA address of the specified section. With =, set the section address to the specified value; otherwise, add or subtract the value to get the new address.

    --change-start incr, --adjust-start incr

    Add incr to the start address to get a new start address. Not supported by all object formats.

    --change-warnings, --adjust-warnings

    Issue a warning if the section that is specified in one of the options --change-section-address, --change-section-lma, or --change-section-vma does not exist.

    --debugging

    Convert debugging information if possible.

    -F bfdname, --target=bfdname

    Set the binary format for both input and output files to the binary file descriptor name bfdname. No format translation is done. Use the -hoption for a list of supported formats for your system.

    -g, --strip-debug

    Do not copy debugging information.

    -G symbol, --keep-global-symbol=symbol

    Copy only the specified global symbol, making all other symbols local to the file. May be specified multiple times.

    --gap-fill=val

    Fill gaps between sections with the specified value; applies to the load address (LMA) of the sections.

    -h, --help

    Print help information, including a list of supported target object formats, then exit.

    -i interleave, --interleave=interleave

    Copy one out of every interleave bytes. Use -b to set the byte to copy (default is 4). This option is ignored if -b is not specified.

    -I bfdname, --input-target=bfdname

    Set the binary file format of the input file using its binary file descriptor name, bfdname.

    -j section, --only-section=section

    Copy only the specified section. May be specified multiple times.

    -K symbol, --keep-symbol=symbol

    Copy only the specified symbol from the source file. May be specified multiple times.

    --keep-global-symbols=filename

    Apply the option --keep-global-symbol to each symbol listed in the specified file. The file should have one symbol per line, with comments beginning with a hash mark (#). May be specified multiple times.

    --keep-symbols=file

    Apply the option --keep-symbol to each symbol listed in the specified file. The file should have one symbol per line, with comments beginning with a hash mark (#). May be specified multiple times.

    -L symbol, --localize-symbol=symbol

    Make the specified symbol local. May be specified multiple times.

    --localize-symbols=filename

    Apply the option --localize-symbol to each symbol listed in the specified file. The file should have one symbol per line, with comments beginning with a hash mark (#). May be specified multiple times.

    -N symbol, --strip-symbol=symbol

    Do not copy the specified symbol. May be specified multiple times.

    --no-change-warnings, --no-adjust-warnings

    Do not issue a warning even if the section specified in one of the options --change-section-address, --change-section-lma, or --change-section-vma does not exist.

    -O bfdname, --output-target=bfdname

    Set the binary file format of the output file using its binary file descriptor name, bfdname. The format srec generates S-records (printable ASCII versions of object files), and binary generates a raw binary file. Use -h for other available formats.

    -p, --preserve-dates

    Preserve the input file's access and modification dates in the output file.

    --pad-to=addr

    Pad the output file up to the load address. Use the fill value specified by --gap-fill (default is 0).

    -R section, --remove-section=section

    Do not copy any section with the specified name. May be specified multiple times.

    --redefine-sym old=new

    Change the name of the symbol old to new.

    --remove-leading-char

    If the first character of a global symbol is a special character (such as an underscore) used by the input object file format, remove it. Unlike--change-leading-char, this option always changes the symbol name when appropriate, regardless of the output object format.

    --rename-section oldname=newname[,flags]

    Rename a section from oldname to newname, optionally also changing the flags to flags.

    -S, --strip-all

    Do not copy relocation and symbol information.

    --set-section-flags section=flags

    Set flags for the specified section as a comma-separated string of flag names. Not all flags are meaningful for all object formats. The possible flags are alloc, code, contents, data, debug, load, noload, readonly, rom, and share.

    --set-start=val

    Set the start address of the new file to the specified value. Not supported by all object formats.

    --srec-forceS3

    Force all srec output records to be type S3 records.

    --srec-len=ival

    Set the maximum length of srec output records to the specified value. The length includes the address, data, and crc fields.

    --strip-symbols=filename

    Apply the option --strip-symbol to each symbol listed in the specified file. The file should have one symbol per line, with comments beginning with a hash mark (#). May be specified multiple times.

    --strip-unneeded

    Strip all symbols not needed for relocation processing.

    -v, --verbose

    Run in verbose mode, listing all object files modified; for archives, list all archive members.

    -V, --version

    Print version information and exit.

    -W symbol, --weaken-symbol=symbol

    Make the specified symbol weak. May be specified multiple times.

    --weaken

    Make all global symbols weak.

    --weaken-symbols=filename

    Apply the option --weaken-symbol to each symbol listed in the specified file. The file should have one symbol per line, with comments beginning with a hash mark (#). May be specified multiple times.

    -x, --discard-all

    Do not copy nonglobal symbols.

    -X, --discard-locals

    Do not copy compiler-generated local symbols (usually those starting with L or ..).

  • 相关阅读:
    HMM 学习一
    matlab buffer的使用
    JDK环境变量配置及Tomcat安装服务
    Js参数RSA加密传输,jsencrypt.js的使用
    Dapper基本增删改查
    Dapper事务操作
    Ubuntu知识记录
    InstallShield 覆盖安装
    Limited Edition for Visual Studio 2013 图文教程(教你如何打包.NET程序)
    Sql Server导出表结构Excel
  • 原文地址:https://www.cnblogs.com/rosepotato/p/3484913.html
Copyright © 2020-2023  润新知