InglesPransesEspanyol

Ad


OnWorks favicon

i686-linux-gnu-objcopy - Online sa Cloud

Patakbuhin ang i686-linux-gnu-objcopy sa OnWorks na libreng hosting provider sa Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator

Ito ang command na i686-linux-gnu-objcopy na maaaring patakbuhin sa OnWorks na libreng hosting provider gamit ang isa sa aming maramihang libreng online na workstation gaya ng Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator

PROGRAMA:

NAME


objcopy - kopyahin at isalin ang mga object file

SINOPSIS


objcopy [-F bfdname|--target=bfdname]
[-I bfdname|--input-target=bfdname]
[-O bfdname|--output-target=bfdname]
[-B bfdarch|--binary-architecture=bfdarch]
[-S|--strip-lahat]
[-g|--strip-debug]
[-K pangalan ng simbolo|--keep-symbol=pangalan ng simbolo]
[-N pangalan ng simbolo|--strip-symbol=pangalan ng simbolo]
[--strip-unneeded-symbol=pangalan ng simbolo]
[-G pangalan ng simbolo|--keep-global-symbol=pangalan ng simbolo]
[--localize-hidden]
[-L pangalan ng simbolo|--localize-symbol=pangalan ng simbolo]
[--globalize-symbol=pangalan ng simbolo]
[-W pangalan ng simbolo|--mahina-simbolo=pangalan ng simbolo]
[-w|--wildcard]
[-x|--i-discard-lahat]
[-X|--discard-locals]
[-b byte|--byte=byte]
[-i [lawak]|--interleave[=lawak]]
[--interleave-width=lapad]
[-j sectionpattern|--lamang-section=sectionpattern]
[-R sectionpattern|--remove-section=sectionpattern]
[-p|--preserve-dates]
[-D|--enable-deterministic-archives]
[-U|--disable-deterministic-archives]
[--debug]
[--gap-fill=Val]
[--pad-to=tirahan]
[--set-start=Val]
[--adjust-start=incr]
[--change-address=incr]
[--change-section-address sectionpattern{=+,-}Val]
[--change-section-lma sectionpattern{=+,-}Val]
[--change-section-vma sectionpattern{=+,-}Val]
[--pagbabago-babala] [--walang-pagbabago-babala]
[--set-section-flags sectionpattern=flag]
[--add-section pangalan ng seksyon=filename]
[--dump-seksyon pangalan ng seksyon=filename]
[--update-seksyon pangalan ng seksyon=filename]
[--rename-section lumang pangalan=bagong pangalan[,flag]]
[--mahabang-seksyon-pangalan {enable,disable, keep}]
[--change-leading-char] [--alisin-nangungunang-char]
[--reverse-bytes=num]
[--srec-len=Ival] [--srec-forceS3]
[--redefine-sym luma=bago]
[--redefine-syms=filename]
[--mahina]
[--keep-symbols=filename]
[--strip-symbols=filename]
[--strip-unneeded-symbols=filename]
[--keep-global-symbols=filename]
[--localize-symbols=filename]
[--globalize-symbols=filename]
[--weaken-symbols=filename]
[--add-symbol pangalan=[seksyon:]halaga[,flag]
[--alt-machine-code=index]
[--prefix-symbols=pisi]
[--prefix-sections=pisi]
[--prefix-alloc-sections=pisi]
[--add-gnu-debuglink=path-to-file]
[--keep-file-symbols]
[--lamang-keep-debug]
[--strip-dwo]
[--extract-dwo]
[--extract-simbolo]
[--nasusulat-teksto]
[--readonly-text]
[--dalisay]
[--marumi]
[--file-alignment=num]
[--bunton=laki]
[--image-base=tirahan]
[--section-alignment=num]
[--stack=laki]
[--subsystem=alin:pangunahing.minor]
[--compress-debug-sections]
[--decompress-debug-sections]
[--dwarf-depth=n]
[--dwarf-start=n]
[-v|--verbose]
[-V|--bersyon]
[- Tumulong] [--impormasyon]
infile [outfile]

DESCRIPTION


Ang GNU objcopy kinokopya ng utility ang mga nilalaman ng isang object file sa
isa pa. objcopy gumagamit ng GNU BFD Library upang basahin at isulat ang bagay
mga file. Maaari nitong isulat ang patutunguhang object file sa ibang format
mula sa source object file. Ang eksaktong pag-uugali ng objcopy is
kinokontrol ng mga opsyon sa command-line. Tandaan na objcopy dapat kaya
upang kopyahin ang isang ganap na naka-link na file sa pagitan ng alinmang dalawang format. Gayunpaman, ang pagkopya ng a
relocatable object file sa pagitan ng alinmang dalawang format ay maaaring hindi gumana bilang
inaasahan.

objcopy lumilikha ng mga pansamantalang file upang gawin ang mga pagsasalin nito at tanggalin ang mga ito
pagkatapos. objcopy gumagamit ng BFD para gawin ang lahat ng gawaing pagsasalin nito; mayroon ito
access sa lahat ng mga format na inilarawan sa BFD at sa gayon ay magagawa
kilalanin ang karamihan sa mga format nang hindi hayagang sinasabi.

objcopy ay maaaring gamitin upang makabuo ng mga S-record sa pamamagitan ng paggamit ng isang output na target ng
srec (hal., gamitin -O srec).

objcopy ay maaaring gamitin upang bumuo ng isang raw binary file sa pamamagitan ng paggamit ng isang output
target ng doble (hal., gamitin -O doble). Kailan objcopy bumubuo ng isang raw
binary file, mahalagang gagawa ito ng memory dump ng mga nilalaman
ng input object file. Ang lahat ng mga simbolo at impormasyon sa paglilipat ay
itatapon. Magsisimula ang memory dump sa address ng pag-load ng
pinakamababang seksyon na kinopya sa output file.

Kapag bumubuo ng isang S-record o isang raw binary file, maaaring makatulong ito sa
gamitin -S upang alisin ang mga seksyong naglalaman ng impormasyon sa pag-debug. Sa ilang
kaso -R ay magiging kapaki-pakinabang upang alisin ang mga seksyon na naglalaman ng impormasyon
hindi iyon kailangan ng binary file.

Tandaan---objcopy ay hindi kayang baguhin ang endianness ng mga input file nito.
Kung ang input format ay may endianness (ilang mga format ay wala), objcopy
maaari lamang kopyahin ang mga input sa mga format ng file na may pareho
endianness o walang endianness (hal., srec). (Gayunpaman, tingnan ang
--reverse-bytes opsyon.)

Opsyon


infile
outfile
Ang input at output file, ayon sa pagkakabanggit. Kung hindi mo tinukoy
outfile, objcopy lumilikha ng pansamantalang file at mapanirang pinapalitan ang pangalan
ang resulta na may pangalan ng infile.

-I bfdname
--input-target=bfdname
Isaalang-alang ang object format ng source file bfdname, Sa halip na
sinusubukang i-deduce ito.

-O bfdname
--output-target=bfdname
Isulat ang output file gamit ang object format bfdname.

-F bfdname
--target=bfdname
paggamit bfdname bilang object format para sa parehong input at output
file; ibig sabihin, ilipat lamang ang data mula sa pinagmulan patungo sa patutunguhan na may no
pagsasalin.

-B bfdarch
--binary-architecture=bfdarch
Kapaki-pakinabang kapag ginagawang an
object file. Sa kasong ito ang arkitektura ng output ay maaaring itakda sa
bfdarch. Ang pagpipiliang ito ay hindi papansinin kung ang input file ay may kilala
bfdarch. Maa-access mo ang binary data na ito sa loob ng isang program sa pamamagitan ng
tumutukoy sa mga espesyal na simbolo na nilikha ng conversion
proseso. Ang mga simbolo na ito ay tinatawag na _binary_objfile_simula,
_binary_objfile_end at _binary_objfile_laki. eg kaya mo
baguhin ang isang file ng larawan sa isang object file at pagkatapos ay i-access ito
ang iyong code gamit ang mga simbolo na ito.

-j sectionpattern
--lamang-section=sectionpattern
Kopyahin lamang ang ipinahiwatig na mga seksyon mula sa input file hanggang sa output
file. Maaaring ibigay ang opsyong ito nang higit sa isang beses. Tandaan na ang paggamit
ang opsyong ito nang hindi naaangkop ay maaaring gawing hindi magagamit ang output file.
Ang mga wildcard na character ay tinatanggap sa sectionpattern.

-R sectionpattern
--remove-section=sectionpattern
Alisin ang anumang pagtutugma ng seksyon sectionpattern mula sa output file.
Maaaring ibigay ang opsyong ito nang higit sa isang beses. Tandaan na ang paggamit nito
ang opsyon na hindi naaangkop ay maaaring gawing hindi magagamit ang output file. Wildcard
ang mga character ay tinatanggap sa sectionpattern. Gamit pareho ang -j at
-R ang mga opsyon na magkasama ay nagreresulta sa hindi natukoy na pag-uugali.

-S
--strip-lahat
Huwag kopyahin ang relokasyon at impormasyon ng simbolo mula sa source file.

-g
--strip-debug
Huwag kopyahin ang mga simbolo o seksyon ng pag-debug mula sa source file.

--strip-hindi kailangan
Tanggalin ang lahat ng mga simbolo na hindi kailangan para sa pagproseso ng relokasyon.

-K pangalan ng simbolo
--keep-symbol=pangalan ng simbolo
Kapag nagtatanggal ng mga simbolo, panatilihin ang simbolo pangalan ng simbolo kahit na ito ay
karaniwang hinubaran. Maaaring ibigay ang opsyong ito nang higit sa isang beses.

-N pangalan ng simbolo
--strip-symbol=pangalan ng simbolo
Huwag kopyahin ang simbolo pangalan ng simbolo mula sa source file. Ang pagpipiliang ito
maaaring ibigay ng higit sa isang beses.

--strip-unneeded-symbol=pangalan ng simbolo
Huwag kopyahin ang simbolo pangalan ng simbolo mula sa source file maliban kung ito ay
kailangan ng relokasyon. Maaaring ibigay ang opsyong ito nang higit sa isang beses.

-G pangalan ng simbolo
--keep-global-symbol=pangalan ng simbolo
Panatilihin lamang ang simbolo pangalan ng simbolo global. Gawing lokal ang lahat ng iba pang simbolo
sa file, upang hindi sila makita sa labas. Ang pagpipiliang ito
maaaring ibigay ng higit sa isang beses.

--localize-hidden
Sa isang bagay na ELF, markahan ang lahat ng mga simbolo na may nakatago o panloob
visibility bilang lokal. Nalalapat ang opsyong ito sa ibabaw ng tukoy sa simbolo
mga opsyon sa localization tulad ng -L.

-L pangalan ng simbolo
--localize-symbol=pangalan ng simbolo
Gumawa ng simbolo pangalan ng simbolo lokal sa file, upang hindi ito makita
panlabas. Maaaring ibigay ang opsyong ito nang higit sa isang beses.

-W pangalan ng simbolo
--mahina-simbolo=pangalan ng simbolo
Gumawa ng simbolo pangalan ng simbolo mahina. Ang opsyong ito ay maaaring ibigay ng higit sa
isang beses.

--globalize-symbol=pangalan ng simbolo
Magbigay ng simbolo pangalan ng simbolo pandaigdigang saklaw upang ito ay makikita sa labas
ng file kung saan ito tinukoy. Ang pagpipiliang ito ay maaaring bigyan ng higit pa
sa isang beses.

-w
--wildcard
Pahintulutan ang mga regular na expression sa pangalan ng simbolos ginagamit sa ibang utos
mga pagpipilian sa linya. Ang tandang pananong (?), asterisk (*), backslash (\)
at mga square bracket ([]) operator ay maaaring gamitin saanman sa
pangalan ng simbolo. Kung ang unang karakter ng pangalan ng simbolo ay ang
tandang padamdam (!) pagkatapos ang kahulugan ng switch ay binaligtad para sa
ang simbolo na iyon. Halimbawa:

-w -W !foo -W fo*

ay magiging sanhi ng objcopy na pahinain ang lahat ng mga simbolo na nagsisimula sa "fo"
maliban sa simbolong "foo".

-x
--i-discard-lahat
Huwag kumopya ng mga di-global na simbolo mula sa source file.

-X
--discard-locals
Huwag kopyahin ang mga lokal na simbolo na binuo ng compiler. (Ang mga ito ay karaniwang nagsisimula
sa L or ..)

-b byte
--byte=byte
Kung pinagana ang interleaving sa pamamagitan ng --interleave pagpipilian pagkatapos
simulan ang hanay ng mga byte upang manatili sa byteika byte. byte ay maaaring maging
nasa hanay mula 0 hanggang lawak-1, saan lawak ay ang halagang ibinigay
sa pamamagitan ng --interleave pagpipilian.

-i [lawak]
--interleave[=lawak]
Kumopya lang ng range sa bawat isa lawak byte. (Ang data ng header ay hindi
apektado). Piliin kung aling byte sa hanay ang magsisimula ng kopya sa
--byte opsyon. Piliin ang lapad ng hanay gamit ang
--interleave-width pagpipilian.

Ang pagpipiliang ito ay kapaki-pakinabang para sa paglikha ng mga file sa program ROM. Ito ay
karaniwang ginagamit na may "srec" na target na output. Tandaan na objcopy
magrereklamo kung hindi mo tinukoy ang --byte opsyon din.

Ang default na interleave na lapad ay 4, gayundin sa --byte itakda sa 0,
objcopy kokopyahin ang unang byte sa bawat apat na byte mula sa
input sa output.

--interleave-width=lapad
Kapag ginamit kasama ng --interleave opsyon, kopyahin lapad byte sa isang pagkakataon.
Ang simula ng hanay ng mga byte na kokopyahin ay itinakda ng --byte
opsyon, at ang lawak ng saklaw ay nakatakda sa --interleave
pagpipilian.

Ang default na halaga para sa opsyong ito ay 1. Ang halaga ng lapad dagdagan
ang byte halaga na itinakda ng --byte ang opsyon ay hindi dapat lumampas sa
interleave na lawak na itinakda ng --interleave pagpipilian.

Maaaring gamitin ang opsyong ito upang lumikha ng mga larawan para sa dalawang 16-bit na flash
interleaved sa isang 32-bit bus sa pamamagitan ng pagpasa -b 0 -i 4
--interleave-width=2 at -b 2 -i 4 --interleave-width=2 sa dalawang
objcopy mga utos. Kung ang input ay '12345678' kung gayon ang mga output
ay magiging '1256' at '3478' ayon sa pagkakabanggit.

-p
--preserve-dates
Itakda ang mga petsa ng pag-access at pagbabago ng output file upang maging ang
katulad ng sa input file.

-D
--enable-deterministic-archives
Mag-opera sa deterministik mode. Kapag kinokopya ang mga miyembro ng archive at
pagsulat ng index ng archive, gumamit ng zero para sa mga UID, GID, timestamp, at
gumamit ng pare-parehong file mode para sa lahat ng file.

If mga binutil ay na-configure sa --enable-deterministic-archives,
pagkatapos ay naka-on ang mode na ito bilang default. Maaari itong i-disable gamit ang -U
opsyon, sa ibaba.

-U
--disable-deterministic-archives
Do hindi gumana sa deterministik mode. Ito ang kabaligtaran ng
-D opsyon, sa itaas: kapag kinokopya ang mga miyembro ng archive at isinusulat ang
archive index, gamitin ang kanilang aktwal na UID, GID, timestamp, at file mode
halaga.

Ito ang default maliban kung mga binutil ay na-configure sa
--enable-deterministic-archives.

--debug
I-convert ang impormasyon sa pag-debug, kung maaari. Hindi ito ang
default dahil ilang partikular na format ng pag-debug lang ang sinusuportahan, at
ang proseso ng conversion ay maaaring magtagal.

--gap-fill Val
Punan ang mga puwang sa pagitan ng mga seksyon na may Val. Nalalapat ang operasyong ito sa
magkarga tirahan (LMA) ng mga seksyon. Ginagawa ito sa pamamagitan ng pagtaas ng
laki ng seksyon na may mas mababang address, at pagpuno sa
dagdag na espasyo na ginawa gamit ang Val.

--pad-to tirahan
I-pad ang output file hanggang sa address ng pag-load tirahan. Tapos na ito
sa pamamagitan ng pagtaas ng laki ng huling seksyon. Ang dagdag na espasyo ay
napuno ng halagang tinukoy ng --gap-fill (default na zero).

--set-start Val
Itakda ang panimulang address ng bagong file sa Val. Hindi lahat ng object file
suportado ng mga format ang pagtatakda ng panimulang address.

--pagbabago-simula incr
--adjust-start incr
Baguhin ang panimulang address sa pamamagitan ng pagdaragdag incr. Hindi lahat ng object file
suportado ng mga format ang pagtatakda ng panimulang address.

--palitan ang mga address incr
--adjust-vma incr
Baguhin ang VMA at LMA address ng lahat ng mga seksyon, pati na rin ang
simulan ang address, sa pamamagitan ng pagdaragdag incr. Ang ilang mga object file format ay hindi
pinahintulutan ang mga address ng seksyon na palitan ng arbitraryo. Tandaan na ito
hindi nililipat ang mga seksyon; kung inaasahan ng programa ang mga seksyon na
mai-load sa isang tiyak na address, at ang opsyong ito ay ginagamit upang baguhin
ang mga seksyon na na-load ang mga ito sa ibang address, ang
maaaring mabigo ang programa.

--change-section-address sectionpattern{=+,-}Val
--adjust-section-vma sectionpattern{=+,-}Val
Itakda o baguhin ang parehong VMA address at ang LMA address ng alinman
pagtutugma ng seksyon sectionpattern. Kung = ay ginagamit, ang address ng seksyon
ay nakatakda sa Val. Kung hindi man, Val ay idinaragdag o ibinabawas sa
address ng seksyon. Tingnan ang mga komento sa ilalim --palitan ang mga address, sa itaas.
If sectionpattern ay hindi tumutugma sa anumang mga seksyon sa input file, a
babala ay ibibigay, maliban kung --walang-pagbabago-babala Ginagamit.

--change-section-lma sectionpattern{=+,-}Val
Itakda o baguhin ang LMA address ng anumang mga seksyong tumutugma
sectionpattern. Ang LMA address ay ang address kung saan ang seksyon
ay mai-load sa memorya sa oras ng pag-load ng programa. Karaniwan ito ay
kapareho ng address ng VMA, na siyang address ng seksyon sa
oras ng pagpapatakbo ng programa, ngunit sa ilang mga sistema, lalo na sa mga kung saan a
programa ay gaganapin sa ROM, ang dalawa ay maaaring magkaiba. Kung = Ginagamit,
nakatakda ang address ng seksyon sa Val. Kung hindi man, Val ay idinaragdag sa o
ibinawas sa address ng seksyon. Tingnan ang mga komento sa ilalim
--palitan ang mga address, sa itaas. Kung sectionpattern hindi tumutugma sa alinman
mga seksyon sa input file, isang babala ang ibibigay, maliban kung
--walang-pagbabago-babala Ginagamit.

--change-section-vma sectionpattern{=+,-}Val
Itakda o baguhin ang VMA address ng anumang pagtutugma ng seksyon
sectionpattern. Ang VMA address ay ang address kung saan ang seksyon
ay matatagpuan sa sandaling ang programa ay nagsimulang magsagawa. Karaniwan
ito ay kapareho ng LMA address, na kung saan ay ang address kung saan ang
Ang seksyon ay mai-load sa memorya, ngunit sa ilang mga sistema, lalo na
ang mga kung saan ang isang programa ay gaganapin sa ROM, ang dalawa ay maaaring magkaiba. Kung
= ay ginagamit, ang address ng seksyon ay nakatakda sa Val. Kung hindi man, Val is
idinagdag o ibinawas sa address ng seksyon. Tingnan ang mga komento
sa ilalim --palitan ang mga address, sa itaas. Kung sectionpattern hindi tugma
anumang mga seksyon sa input file, isang babala ang ibibigay, maliban kung
--walang-pagbabago-babala Ginagamit.

--pagbabago-babala
--adjust-babala
If --change-section-address or --change-section-lma or
--change-section-vma ay ginagamit, at ang pattern ng seksyon ay hindi
tumugma sa anumang mga seksyon, magbigay ng babala. Ito ang default.

--walang-pagbabago-babala
--walang-adjust-babala
Huwag magbigay ng babala kung --change-section-address or
--adjust-section-lma or --adjust-section-vma ay ginagamit, kahit na ang
hindi tumutugma ang pattern ng seksyon sa anumang mga seksyon.

--set-section-flags sectionpattern=flag
Itakda ang mga flag para sa anumang mga seksyon na tumutugma sectionpattern. ang flag
Ang argumento ay isang pinaghihiwalay ng kuwit na string ng mga pangalan ng bandila. Ang kinikilala
mga pangalan ay alloc, nilalaman, magkarga, walang load, Basahin lamang, code, data, ROM,
ibahagi, at mag-alis ng mga insekto. Maaari mong itakda ang nilalaman bandila para sa isang seksyon
na walang mga nilalaman, ngunit hindi makahulugang i-clear ang
nilalaman flag ng isang seksyon na may mga nilalaman--alisin lang
ang seksyon sa halip. Hindi lahat ng flag ay makabuluhan para sa lahat ng bagay
mga format ng file.

--add-section pangalan ng seksyon=filename
Magdagdag ng bagong seksyon na pinangalanan pangalan ng seksyon habang kinokopya ang file. Ang
ang mga nilalaman ng bagong seksyon ay kinuha mula sa file filename. ang
laki ng seksyon ang magiging laki ng file. Ang pagpipiliang ito lamang
gumagana sa mga format ng file na maaaring suportahan ang mga seksyon na may arbitrary
mga pangalan. Tandaan - maaaring kailanganin na gamitin ang --set-section-flags
opsyon upang itakda ang mga katangian ng bagong likhang seksyon.

--dump-seksyon pangalan ng seksyon=filename
Ilagay ang mga nilalaman ng seksyon na pinangalanan pangalan ng seksyon sa file
filename, pag-overwrite sa anumang nilalamang maaaring naroon
dati. Ang pagpipiliang ito ay kabaligtaran ng --add-section. ito
ang pagpipilian ay katulad ng --lamang-seksyon opsyon maliban sa ginagawa nito
hindi lumikha ng isang naka-format na file, itinatapon lamang nito ang mga nilalaman bilang raw
binary data, nang hindi naglalapat ng anumang mga relokasyon. Ang pagpipilian ay maaaring
tinukoy ng higit sa isang beses.

--update-seksyon pangalan ng seksyon=filename
Palitan ang mga kasalukuyang nilalaman ng isang seksyon na pinangalanan pangalan ng seksyon sa
ang mga nilalaman ng file filename. Ang laki ng seksyon ay magiging
nababagay sa laki ng file. Ang seksyon ay nagba-flag para sa
pangalan ng seksyon ay hindi magbabago. Para sa ELF format file ang seksyon sa
Ang pagmamapa ng segment ay mananatiling hindi nagbabago, isang bagay na hindi
posibleng gamit --alisin-seksyon sinundan ng --add-section. ang
ang opsyon ay maaaring tukuyin nang higit sa isang beses.

Tandaan - posible itong gamitin --rename-section at --update-seksyon
sa parehong pag-update at pagpapangalan ng isang seksyon mula sa isang command line. Dito sa
kaso, ipasa ang orihinal na pangalan ng seksyon sa --update-seksyon, at ang
orihinal at bagong mga pangalan ng seksyon sa --rename-section.

--add-symbol pangalan=[seksyon:]halaga[,flag]
Magdagdag ng bagong simbolo na pinangalanan pangalan habang kinokopya ang file. Ang pagpipiliang ito
maaaring tukuyin ng maraming beses. Kung ang seksyon ay ibinigay, ang
iuugnay ang simbolo at nauugnay sa seksyong iyon,
kung hindi, ito ay isang simbolo ng ABS. Pagtukoy ng isang hindi natukoy
seksyon ay magreresulta sa isang nakamamatay na error. Walang tseke para sa
halaga, kukunin ito bilang tinukoy. Ang mga simbolo ng bandila ay maaaring
tinukoy at hindi lahat ng flag ay magiging makabuluhan para sa lahat ng object file
mga format. Bilang default, ang simbolo ay magiging pandaigdigan. Ang espesyal na bandila
'noon=othersym' ay maglalagay ng bagong simbolo sa harap ng
tinukoy othersym, kung hindi, ang (mga) simbolo ay idaragdag sa
dulo ng talahanayan ng simbolo sa pagkakasunud-sunod ng mga ito.

--rename-section lumang pangalan=bagong pangalan[,flag]
Palitan ang pangalan ng isang seksyon mula sa lumang pangalan sa bagong pangalan, opsyonal na baguhin ang
mga flag ng seksyon sa flag nasa proseso. Ito ay may kalamangan
gamit ang isang linker script upang maisagawa ang pagpapalit ng pangalan sa na ang output
nananatili bilang object file at hindi nagiging linked executable.

Ang opsyong ito ay partikular na nakakatulong kapag ang input format ay
binary, dahil ito ay palaging lilikha ng isang seksyon na tinatawag na .data. Kung
halimbawa, gusto mo na lang gumawa ng seksyong tinatawag na .rodata
na naglalaman ng binary data na maaari mong gamitin ang sumusunod na command line sa
makamit ito:

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


--mahabang-seksyon-pangalan {enable,disable, keep}
Kinokontrol ang pangangasiwa ng mahabang pangalan ng seksyon kapag pinoproseso ang "COFF"
at mga format ng object na "PE-COFF". Ang default na pag-uugali, panatilihin, ay
panatilihin ang mahahabang pangalan ng seksyon kung mayroon man sa input file.
Ang paganahin at huwag paganahin sapilitang paganahin o hindi paganahin ng mga opsyon ang paggamit
ng mahabang mga pangalan ng seksyon sa output object; kailan huwag paganahin ay nasa
effect, ang anumang mahabang pangalan ng seksyon sa input object ay magiging
pinutol. Ang paganahin ang opsyon ay maglalabas lamang ng mahahabang pangalan ng seksyon kung
alinman ang naroroon sa mga input; ito ay halos pareho sa panatilihin, Ngunit
ito ay naiwang undefined kung ang paganahin maaaring pilitin ng opsyon ang
paglikha ng isang walang laman na talahanayan ng string sa output file.

--change-leading-char
Ang ilang mga object file format ay gumagamit ng mga espesyal na character sa simula ng
mga simbolo. Ang pinakakaraniwang ganoong karakter ay underscore, na
Ang mga compiler ay madalas na nagdaragdag bago ang bawat simbolo. Ang pagpipiliang ito ay nagsasabi objcopy
upang baguhin ang nangungunang karakter ng bawat simbolo kapag nag-convert ito
sa pagitan ng mga format ng object file. Kung ang mga format ng object file ay gumagamit ng
parehong nangungunang karakter, ang pagpipiliang ito ay walang epekto. Kung hindi, ito
ay magdaragdag ng karakter, o mag-aalis ng karakter, o magpapalit ng karakter,
kung naaangkop.

--alisin-nangungunang-char
Kung ang unang karakter ng isang pandaigdigang simbolo ay isang espesyal na simbolo
nangungunang character na ginagamit ng object file format, alisin ang
karakter. Ang pinakakaraniwang simbolo na nangunguna sa karakter ay underscore.
Aalisin ng opsyong ito ang isang nangungunang underscore mula sa lahat ng global
mga simbolo. Maaari itong maging kapaki-pakinabang kung gusto mong pag-ugnayin ang mga bagay
ng iba't ibang mga format ng file na may iba't ibang mga kumbensyon para sa simbolo
mga pangalan. Iba ito sa --change-leading-char dahil ito
palaging binabago ang pangalan ng simbolo kapag naaangkop, anuman ang
object file format ng output file.

--reverse-bytes=num
Baliktarin ang mga byte sa isang seksyon na may mga nilalaman ng output. Isang seksyon
ang haba ay dapat na pantay na mahahati sa halagang ibinigay upang ang
palitan upang maganap. Ang pagbabalik ay nagaganap bago ang
isinagawa ang interleaving.

Karaniwang ginagamit ang opsyong ito sa pagbuo ng mga imahe ng ROM para sa
may problemang target na sistema. Halimbawa, sa ilang target na board,
ang 32-bit na mga salita na kinukuha mula sa 8-bit ROM ay muling pinagsama-sama
little-endian byte order anuman ang CPU byte order.
Depende sa modelo ng programming, ang endianness ng ROM ay maaaring
kailangang baguhin.

Isaalang-alang ang isang simpleng file na may isang seksyon na naglalaman ng mga sumusunod
walong byte: 12345678.

paggamit --reverse-bytes=2 para sa halimbawa sa itaas, ang mga byte sa
ang output file ay iuutos sa 21436587.

paggamit --reverse-bytes=4 para sa halimbawa sa itaas, ang mga byte sa
ang output file ay iuutos sa 43218765.

Sa pamamagitan ng paggamit --reverse-bytes=2 para sa halimbawa sa itaas, na sinusundan ng
--reverse-bytes=4 sa output file, ang mga byte sa pangalawa
ang output file ay iuutos sa 34127856.

--srec-len=Ival
Makahulugan lamang para sa srec output. Itakda ang maximum na haba ng
Ginagawa ang mga srecord sa Ival. Saklaw ng haba na ito ang parehong address,
data at mga patlang ng crc.

--srec-forceS3
Makahulugan lamang para sa srec output. Iwasan ang pagbuo ng S1/S2
records, na lumilikha ng S3-only record format.

--redefine-sym luma=bago
Baguhin ang pangalan ng isang simbolo luma, Upang bago. Ito ay maaaring maging kapaki-pakinabang kapag
ang isa ay sinusubukang iugnay ang dalawang bagay kung saan wala ka
pinagmulan, at may mga banggaan ng pangalan.

--redefine-syms=filename
gamitin --redefine-sym sa bawat pares ng simbolo"luma bago"nakalista sa
file filename. filename ay simpleng flat file, na may isang simbolo
pares sa bawat linya. Ang mga komento sa linya ay maaaring ipakilala ng hash
karakter. Maaaring ibigay ang opsyong ito nang higit sa isang beses.

--mahina
Baguhin ang lahat ng mga pandaigdigang simbolo sa file upang maging mahina. Ito ay maaaring
kapaki-pakinabang kapag gumagawa ng isang bagay na maiuugnay laban sa iba
mga bagay gamit ang -R opsyon sa linker. Ang pagpipiliang ito ay lamang
epektibo kapag gumagamit ng isang object file format na sumusuporta sa mahina
mga simbolo.

--keep-symbols=filename
gamitin --panatilihin-simbulo opsyon sa bawat simbolo na nakalista sa file
filename. filename ay simpleng flat file, na may isang pangalan ng simbolo bawat
linya. Ang mga komento sa linya ay maaaring ipakilala ng hash na character. Ito
ang opsyon ay maaaring ibigay ng higit sa isang beses.

--strip-symbols=filename
gamitin --strip-simbolo opsyon sa bawat simbolo na nakalista sa file
filename. filename ay simpleng flat file, na may isang pangalan ng simbolo bawat
linya. Ang mga komento sa linya ay maaaring ipakilala ng hash na character. Ito
ang opsyon ay maaaring ibigay ng higit sa isang beses.

--strip-unneeded-symbols=filename
gamitin --strip-unneeded-symbol opsyon sa bawat simbolo na nakalista sa
file filename. filename ay simpleng flat file, na may isang simbolo
pangalan bawat linya. Ang mga komento sa linya ay maaaring ipakilala ng hash
karakter. Maaaring ibigay ang opsyong ito nang higit sa isang beses.

--keep-global-symbols=filename
gamitin --panatilihin-global-simbulo opsyon sa bawat simbolo na nakalista sa file
filename. filename ay simpleng flat file, na may isang pangalan ng simbolo bawat
linya. Ang mga komento sa linya ay maaaring ipakilala ng hash na character. Ito
ang opsyon ay maaaring ibigay ng higit sa isang beses.

--localize-symbols=filename
gamitin --localize-simbolo opsyon sa bawat simbolo na nakalista sa file
filename. filename ay simpleng flat file, na may isang pangalan ng simbolo bawat
linya. Ang mga komento sa linya ay maaaring ipakilala ng hash na character. Ito
ang opsyon ay maaaring ibigay ng higit sa isang beses.

--globalize-symbols=filename
gamitin --globalize-simbolo opsyon sa bawat simbolo na nakalista sa file
filename. filename ay simpleng flat file, na may isang pangalan ng simbolo bawat
linya. Ang mga komento sa linya ay maaaring ipakilala ng hash na character. Ito
ang opsyon ay maaaring ibigay ng higit sa isang beses.

--weaken-symbols=filename
gamitin --mahina-simbulo opsyon sa bawat simbolo na nakalista sa file
filename. filename ay simpleng flat file, na may isang pangalan ng simbolo bawat
linya. Ang mga komento sa linya ay maaaring ipakilala ng hash na character. Ito
ang opsyon ay maaaring ibigay ng higit sa isang beses.

--alt-machine-code=index
Kung ang arkitektura ng output ay may mga alternatibong code ng makina, gamitin ang
indexang code sa halip na ang default. Ito ay kapaki-pakinabang kung sakaling a
machine ay itinalaga ng isang opisyal na code at ang tool-chain ay gumagamit ng
bagong code, ngunit ang ibang mga application ay nakadepende pa rin sa orihinal na code
ginagamit. Para sa mga arkitektura na nakabatay sa ELF kung ang index alternatiba
ay hindi umiiral pagkatapos ang halaga ay itinuturing bilang isang ganap na numero sa
maiimbak sa e_machine field ng ELF header.

--nasusulat-teksto
Markahan ang output text bilang masusulat. Ang pagpipiliang ito ay hindi makabuluhan para sa
lahat ng mga format ng object file.

--readonly-text
Gawing protektado ang output text write. Hindi makabuluhan ang opsyong ito
para sa lahat ng mga format ng object file.

--dalisay
Markahan ang output file bilang demand paged. Hindi makabuluhan ang opsyong ito
para sa lahat ng mga format ng object file.

--marumi
Markahan ang output file bilang hindi malinis. Ang pagpipiliang ito ay hindi makabuluhan para sa
lahat ng mga format ng object file.

--prefix-symbols=pisi
Prefix ang lahat ng mga simbolo sa output file na may pisi.

--prefix-sections=pisi
Prefix ang lahat ng pangalan ng seksyon sa output file na may pisi.

--prefix-alloc-sections=pisi
Prefix ang lahat ng pangalan ng lahat ng inilalaan na seksyon sa output file
sa pisi.

--add-gnu-debuglink=path-to-file
Lumilikha ng seksyong .gnu_debuglink na naglalaman ng reference sa
path-to-file at idinagdag ito sa output file. Tandaan: ang file sa
path-to-file dapat umiral. Bahagi ng proseso ng pagdaragdag ng
Kasama sa seksyong .gnu_debuglink ang pag-embed ng checksum ng
mga nilalaman ng file ng impormasyon sa pag-debug sa seksyon.

Kung ang debug info file ay binuo sa isang lokasyon ngunit ito ay pupunta
mai-install sa ibang pagkakataon sa ibang lokasyon pagkatapos ay huwag
gamitin ang landas patungo sa naka-install na lokasyon. Ang --add-gnu-debuglink
mabibigo ang opsyon dahil wala pa ang naka-install na file.
Sa halip ay ilagay ang debug info file sa kasalukuyang direktoryo at gamitin
ang --add-gnu-debuglink opsyon nang walang anumang bahagi ng direktoryo,
ganito:

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

Sa oras ng pag-debug, susubukan ng debugger na hanapin ang hiwalay
debug info file sa isang hanay ng mga kilalang lokasyon. Ang eksaktong hanay ng
nag-iiba ang mga lokasyong ito depende sa pamamahagi na ginagamit,
ngunit kadalasang kinabibilangan ito ng:

"* Ang parehong direktoryo bilang ang executable."
"* Isang sub-directory ng direktoryo na naglalaman ng executable"
tinatawag na .debug

"* Isang pangkalahatang direktoryo ng debug gaya ng /usr/lib/debug."

Hangga't ang debug info file ay na-install sa isa sa mga ito
mga lokasyon bago patakbuhin ang debugger dapat gumana ang lahat
tama.

--keep-file-symbols
Kapag nagtanggal ng file, marahil ay may --strip-debug or
--strip-hindi kailangan, panatilihin ang anumang mga simbolo na tumutukoy sa mga pangalan ng source file,
na kung hindi man ay mahubaran.

--lamang-keep-debug
Mag-alis ng file, mag-alis ng mga nilalaman ng anumang mga seksyon na hindi
hinubaran ng --strip-debug at pag-iwan sa mga seksyon ng pag-debug
buo. Sa mga ELF file, pinapanatili nito ang lahat ng mga seksyon ng tala sa
output.

Tandaan - ang mga header ng seksyon ng mga hinubad na seksyon ay napanatili,
kasama ang kanilang mga sukat, ngunit ang mga nilalaman ng seksyon ay
itinapon. Ang mga header ng seksyon ay pinapanatili upang ang iba pang mga tool
maaaring itugma ang debuginfo file sa tunay na maipapatupad, kahit na
ang executable na iyon ay inilipat sa ibang address space.

Ang layunin ay ang pagpipiliang ito ay gagamitin kasabay ng
--add-gnu-debuglink upang lumikha ng dalawang bahagi na maipapatupad. Isa a
Nakuha ang binary na sasakupin ng mas kaunting espasyo sa RAM at sa a
distribution at ang pangalawa ay isang debugging information file which is
kailangan lang kung kinakailangan ang mga kakayahan sa pag-debug. Ang iminungkahing
Ang pamamaraan para sa paglikha ng mga file na ito ay ang mga sumusunod:

1.
"foo" tapos...

1.
lumikha ng isang file na naglalaman ng impormasyon sa pag-debug.

1.
hinubaran executable.

1.
upang magdagdag ng link sa impormasyon sa pag-debug sa natanggal
maipapatupad.

Tandaan---ang pagpili ng ".dbg" bilang extension para sa debug info file
ay arbitraryo. Gayundin ang hakbang na "--only-keep-debug" ay opsyonal. Ikaw
sa halip ay maaaring gawin ito:

1.
1.
1.
1.

ibig sabihin, ang file na itinuro ng --add-gnu-debuglink maaaring maging ang
ganap na maipapatupad. Ito ay hindi kailangang isang file na nilikha ng
--lamang-keep-debug Lumipat.

Tandaan --- ang switch na ito ay inilaan lamang para sa paggamit sa ganap na naka-link na mga file.
Hindi makatuwirang gamitin ito sa mga object file kung saan ang
Maaaring hindi kumpleto ang impormasyon sa pag-debug. Bukod sa gnu_debuglink
Kasalukuyang sinusuportahan lamang ng feature ang pagkakaroon ng isang filename
naglalaman ng impormasyon sa pag-debug, hindi maramihang mga filename sa isang-
per-object-file basis.

--strip-dwo
Alisin ang mga nilalaman ng lahat ng DWARF .dwo na seksyon, umaalis sa
ang natitirang mga seksyon ng pag-debug at lahat ng mga simbolo ay buo. Ang pagpipiliang ito
ay inilaan para sa paggamit ng compiler bilang bahagi ng -gsplit-dwarf
opsyon, na naghahati sa impormasyon ng debug sa pagitan ng .o file at a
hiwalay na .dwo file. Binubuo ng compiler ang lahat ng impormasyon sa pag-debug
sa parehong file, pagkatapos ay ginagamit ang --extract-dwo opsyon upang kopyahin ang
.dwo na mga seksyon sa .dwo file, pagkatapos ay ang --strip-dwo pagpipilian sa
alisin ang mga seksyong iyon mula sa orihinal na .o file.

--extract-dwo
I-extract ang mga nilalaman ng lahat ng DWARF .dwo na seksyon. Tingnan ang
--strip-dwo opsyon para sa karagdagang impormasyon.

--file-alignment num
Tukuyin ang pagkakahanay ng file. Palaging magsisimula ang mga seksyon sa file
sa mga file offset na multiple ng numerong ito. Nagde-default ito
sa 512. [Ang opsyong ito ay partikular sa mga target ng PE.]

--bunton reserba
--bunton reserba,gumawa
Tukuyin ang bilang ng mga byte ng memory na irereserba (at opsyonal
commit) na gagamitin bilang heap para sa program na ito. [Ang pagpipiliang ito ay
partikular sa mga target ng PE.]

--image-base halaga
paggamit halaga bilang base address ng iyong program o dll. Ito ang
pinakamababang lokasyon ng memorya na gagamitin kapag ang iyong program o dll
ay load. Upang bawasan ang pangangailangan na lumipat at pagbutihin ang pagganap
ng iyong mga dll, ang bawat isa ay dapat magkaroon ng isang natatanging base address at hindi
magkakapatong sa anumang iba pang mga dll. Ang default ay 0x400000 para sa mga executable,
at 0x10000000 para sa mga dll. [Ang pagpipiliang ito ay partikular sa mga target ng PE.]

--section-alignment num
Itinatakda ang pagkakahanay ng seksyon. Ang mga seksyon sa memorya ay palaging magsisimula
sa mga address na isang multiple ng numerong ito. Default sa
0x1000. [Ang pagpipiliang ito ay partikular sa mga target ng PE.]

--salansan reserba
--salansan reserba,gumawa
Tukuyin ang bilang ng mga byte ng memory na irereserba (at opsyonal
commit) na gagamitin bilang stack para sa program na ito. [Ang pagpipiliang ito ay
partikular sa mga target ng PE.]

--subsystem alin
--subsystem alin:pangunahing
--subsystem alin:pangunahing.minor
Tinutukoy ang subsystem kung saan ipapatupad ang iyong program. Ang
legal na halaga para sa alin ay "native", "windows", "console", "posix",
"efi-app", "efi-bsd", "efi-rtd", "sal-rtd", at "xbox". Maaari mong
opsyonal na itakda din ang bersyon ng subsystem. Ang mga numerong halaga ay din
tinanggap para sa alin. [Ang opsyon na ito ay partikular sa mga target ng PE.]

--extract-simbolo
Panatilihin ang mga flag at simbolo ng seksyon ng file ngunit alisin ang lahat ng seksyon
datos. Sa partikular, ang pagpipilian:

*
*
*

Ang pagpipiliang ito ay ginagamit upang bumuo ng isang .sym file para sa isang VxWorks kernel. Ito
ay maaari ding maging isang kapaki-pakinabang na paraan ng pagbabawas ng laki ng a --mga-simbolo lamang
linker input file.

--compress-debug-sections
I-compress ang mga seksyon ng DWARF debug gamit ang zlib gamit ang SHF_COMPRESSED mula sa
ang ELF ABI. Tandaan - kung ang compression ay talagang gagawa ng isang seksyon
mas malaki, pagkatapos ay hindi ito na-compress.

--compress-debug-sections=wala
--compress-debug-sections=zlib
--compress-debug-sections=zlib-gnu
--compress-debug-sections=zlib-gabi
Para sa mga ELF file, kinokontrol ng mga opsyong ito kung paano ang mga seksyon ng DWARF debug
naka-compress --compress-debug-sections=wala ay katumbas ng
--decompress-debug-sections. --compress-debug-sections=zlib at
--compress-debug-sections=zlib-gabi ay katumbas ng
--compress-debug-sections. --compress-debug-sections=zlib-gnu
pini-compress ang mga seksyon ng pag-debug ng DWARF gamit ang zlib. Ang mga seksyon ng debug ay
pinalitan ng pangalan upang magsimula sa .zdebug sa halip ng .debug. Tandaan - kung
compression ay talagang gumawa ng isang seksyon mas malaki, kung gayon ay hindi
naka-compress o pinalitan ng pangalan.

--decompress-debug-sections
I-decompress ang mga seksyon ng pag-debug ng DWARF gamit ang zlib. Ang orihinal na seksyon
ang mga pangalan ng mga naka-compress na seksyon ay naibalik.

-V
--bersyon
Ipakita ang numero ng bersyon ng objcopy.

-v
--verbose
Verbose output: ilista ang lahat ng object file na binago. Sa kaso ng
archive, objcopy -V naglilista ng lahat ng miyembro ng archive.

- Tumulong
Magpakita ng buod ng mga opsyon sa objcopy.

--impormasyon
Magpakita ng listahan na nagpapakita ng lahat ng mga arkitektura at mga format ng object
magagamit.

@file
Basahin ang mga opsyon sa command-line mula sa file. Ang mga pagpipilian na nabasa ay ipinasok
kapalit ng orihinal na @file pagpipilian Kung file ay hindi umiiral, o
hindi mababasa, pagkatapos ay literal na ituturing ang opsyon, at hindi
inalis.

Mga pagpipilian sa file ay pinaghihiwalay ng whitespace. Isang whitespace
character ay maaaring isama sa isang opsyon sa pamamagitan ng pagpapaligid sa kabuuan
opsyon sa isa o dobleng panipi. Anumang karakter (kabilang ang
isang backslash) ay maaaring isama sa pamamagitan ng paglalagay ng prefix sa magiging karakter
kasama ng backslash. Ang file maaaring maglaman ng karagdagang
@file mga pagpipilian; anumang ganitong mga opsyon ay ipoproseso nang recursively.

Gumamit ng i686-linux-gnu-objcopy online gamit ang mga serbisyo ng onworks.net


Mga Libreng Server at Workstation

Mag-download ng Windows at Linux apps

  • 1
    NSIS: Nullsoft Scriptable Install System
    NSIS: Nullsoft Scriptable Install System
    NSIS (Nullsoft Scriptable Install
    System) ay isang propesyonal na open source
    system upang lumikha ng mga installer ng Windows. Ito
    ay idinisenyo upang maging kasing liit at nababaluktot
    bilang posible...
    I-download ang NSIS: Nullsoft Scriptable Install System
  • 2
    authpass
    authpass
    Ang AuthPass ay isang open source na password
    manager na may suporta para sa sikat at
    napatunayang Keepass (kdbx 3.x AT kdbx 4.x ...
    I-download ang authpass
  • 3
    Zabbix
    Zabbix
    Ang Zabbix ay isang enterprise-class na bukas
    pinagmumulan na ibinahagi ng solusyon sa pagsubaybay
    dinisenyo upang subaybayan at subaybayan
    pagganap at pagkakaroon ng network
    mga server, device...
    I-download ang Zabbix
  • 4
    KDiff3
    KDiff3
    Hindi na pinapanatili ang repositoryong ito
    at iniingatan para sa mga layunin ng archival. Tingnan mo
    https://invent.kde.org/sdk/kdiff3 for
    ang pinakabagong code at
    https://download.kde.o...
    I-download ang KDiff3
  • 5
    USBLoaderGX
    USBLoaderGX
    Ang USBLoaderGX ay isang GUI para sa
    Ang USB Loader ni Waninkoko, batay sa
    libwiigui. Pinapayagan nito ang paglilista at
    paglulunsad ng mga Wii games, Gamecube games at
    homebrew sa Wii at WiiU...
    I-download ang USBLoaderGX
  • 6
    Firebird
    Firebird
    Nag-aalok ang Firebird RDBMS ng mga tampok ng ANSI SQL
    & tumatakbo sa Linux, Windows at
    ilang mga platform ng Unix. Mga tampok
    mahusay na pagkakatugma at pagganap
    at kapangyarihan...
    I-download ang Firebird
  • Marami pa »

Linux command

Ad