ภาษาอังกฤษภาษาฝรั่งเศสสเปน

Ad


ไอคอน Fav ของ OnWorks

mips-linux-gnu-objcopy - ออนไลน์ใน Cloud

เรียกใช้ mips-linux-gnu-objcopy ในผู้ให้บริการโฮสต์ฟรีของ OnWorks ผ่าน Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS

นี่คือคำสั่ง mips-linux-gnu-objcopy ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้หนึ่งในเวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS

โครงการ:

ชื่อ


objcopy - คัดลอกและแปลไฟล์อ็อบเจ็กต์

เรื่องย่อ


สำเนาวัตถุ [-F bfdname|--เป้าหมาย=bfdname]
[-I bfdname|--input-เป้าหมาย=bfdname]
[-O bfdname|--output-เป้าหมาย=bfdname]
[-B bfdarch|--ไบนารี-สถาปัตยกรรม=bfdarch]
[-S|--แถบทั้งหมด]
[-g|--สตริป-ดีบัก]
[-K ชื่อสัญลักษณ์|--keep-สัญลักษณ์=ชื่อสัญลักษณ์]
[-N ชื่อสัญลักษณ์|--แถบ-สัญลักษณ์=ชื่อสัญลักษณ์]
[--แถบ-ไม่จำเป็น-สัญลักษณ์=ชื่อสัญลักษณ์]
[-G ชื่อสัญลักษณ์|--keep-global-สัญลักษณ์=ชื่อสัญลักษณ์]
[--localize-ซ่อน]
[-L ชื่อสัญลักษณ์|--localize-สัญลักษณ์=ชื่อสัญลักษณ์]
[--globalize-สัญลักษณ์=ชื่อสัญลักษณ์]
[-W ชื่อสัญลักษณ์|--อ่อนแอ-สัญลักษณ์=ชื่อสัญลักษณ์]
[-w|--ไวลด์การ์ด]
[-x|--ทิ้งทั้งหมด]
[-X|--ทิ้ง-ชาวบ้าน]
[-b ไบต์|--ไบต์=ไบต์]
[-i [ความกว้าง]|--แทรก[=ความกว้าง]]
[--interleave-ความกว้าง=ความกว้าง]
[-j รูปแบบมาตรา|--เฉพาะส่วน=รูปแบบมาตรา]
[-R รูปแบบมาตรา|--remove-section=รูปแบบมาตรา]
[-p|-- เก็บรักษาวันที่]
[-D|--enable-deterministic-คลังเก็บ]
[-U|--disable-deterministic-คลังเก็บ]
[--debug]
[--gap-เติม=คลื่น]
[--pad-to=ที่อยู่]
[--set-start=คลื่น]
[--adjust-start=รวม]
[--เปลี่ยนที่อยู่=รวม]
[--เปลี่ยน-ส่วน-ที่อยู่ รูปแบบมาตรา-คลื่น]
[--change-section-lma รูปแบบมาตรา-คลื่น]
[--เปลี่ยนส่วน-vma รูปแบบมาตรา-คลื่น]
[--เปลี่ยน-คำเตือน] [--no-change-คำเตือน]
[--set-section-flag รูปแบบมาตรา=ธง]
[--เพิ่มส่วน ชื่อส่วน=ชื่อไฟล์]
[--การถ่ายโอนข้อมูลส่วน ชื่อส่วน=ชื่อไฟล์]
[--update-ส่วน ชื่อส่วน=ชื่อไฟล์]
[--เปลี่ยนชื่อ-section ชื่อเก่า=ชื่อใหม่[,ธง]]
[--ชื่อส่วนยาว {เปิด,ปิด,เก็บ}]
[--เปลี่ยนผู้นำ-char] [--remove-ชั้นนำ-char]
[--reverse ไบต์ =NUM]
[--srec-เลน=ival] [--srec-forceS3]
[--นิยามใหม่-sym เก่า=ใหม่]
[--นิยามใหม่-syms=ชื่อไฟล์]
[--อ่อนแอ]
[--keep-สัญลักษณ์=ชื่อไฟล์]
[--แถบ-สัญลักษณ์=ชื่อไฟล์]
[--แถบ-ไม่จำเป็น-สัญลักษณ์=ชื่อไฟล์]
[--keep-global-สัญลักษณ์=ชื่อไฟล์]
[--localize-สัญลักษณ์=ชื่อไฟล์]
[--globalize-สัญลักษณ์=ชื่อไฟล์]
[--อ่อนแอ-สัญลักษณ์=ชื่อไฟล์]
[--add-สัญลักษณ์ ชื่อ=[ส่วน:]ความคุ้มค่า[,ธง]
[--alt-รหัสเครื่อง=ดัชนี]
[--prefix-สัญลักษณ์=เชือก]
[--คำนำหน้า-section=เชือก]
[--prefix-alloc-section=เชือก]
[--add-gnu-debuglink=เส้นทางสู่ไฟล์]
[--เก็บไฟล์-สัญลักษณ์]
[--เก็บ-ดีบักเท่านั้น]
[--แถบ-dwo]
[--แยก-dwo]
[--extract-สัญลักษณ์]
[--เขียนได้-ข้อความ]
[--readonly-ข้อความ]
[--บริสุทธิ์]
[--ไม่บริสุทธิ์]
[--การจัดตำแหน่งไฟล์=NUM]
[--กอง=ขนาด]
[--image-ฐาน=ที่อยู่]
[--ส่วนการจัดตำแหน่ง=NUM]
[--สแต็ค=ขนาด]
[--ระบบย่อย=ที่:สำคัญ.ผู้เยาว์]
[--compress-debug-sections]
[--คลายการบีบอัด-debug-sections]
[--dwarf-deep=n]
[--คนแคระเริ่มต้น=n]
[-v|--รายละเอียด]
[-V|--รุ่น]
[--ช่วยด้วย] [--ข้อมูล]
แฟ้ม [ออกจากไฟล์]

DESCRIPTION


GNU สำเนา ยูทิลิตีคัดลอกเนื้อหาของไฟล์อ็อบเจ็กต์ไปยังไฟล์อื่น สำเนา ใช้
ไลบรารี GNU BFD เพื่ออ่านและเขียนไฟล์อ็อบเจ็กต์ มันสามารถเขียนปลายทาง
ไฟล์อ็อบเจ็กต์ในรูปแบบที่แตกต่างจากไฟล์ออบเจ็กต์ต้นทาง พฤติกรรมที่แน่นอน
of สำเนา ถูกควบคุมโดยตัวเลือกบรรทัดคำสั่ง สังเกตว่า สำเนา ควรจะสามารถ
คัดลอกไฟล์ที่ลิงก์อย่างสมบูรณ์ระหว่างสองรูปแบบใดๆ อย่างไรก็ตาม การคัดลอกวัตถุที่เคลื่อนย้ายได้
ไฟล์ระหว่างสองรูปแบบอาจไม่ทำงานตามที่คาดไว้

สำเนา สร้างไฟล์ชั่วคราวเพื่อทำการแปลและลบออกในภายหลัง
สำเนา ใช้ BFD เพื่อทำงานแปลทั้งหมด มีการเข้าถึงทุกรูปแบบ
อธิบายไว้ใน BFD และสามารถจดจำรูปแบบส่วนใหญ่ได้โดยไม่ต้องบอกอย่างชัดเจน

สำเนา สามารถใช้เพื่อสร้าง S-records โดยใช้เป้าหมายเอาต์พุตของ การตรวจสอบ (เช่น ใช้ -O
การตรวจสอบ).

สำเนา สามารถใช้เพื่อสร้างไฟล์ไบนารีดิบโดยใช้เป้าหมายเอาต์พุตของ ไบนารี
(เช่น ใช้ -O ไบนารี). เมื่อไหร่ สำเนา สร้างไฟล์ไบนารีดิบ มันจะเป็นหลัก
สร้างการถ่ายโอนข้อมูลหน่วยความจำของเนื้อหาของไฟล์อ็อบเจ็กต์อินพุต สัญลักษณ์ทั้งหมดและ
ข้อมูลการย้ายถิ่นฐานจะถูกยกเลิก การถ่ายโอนข้อมูลหน่วยความจำจะเริ่มที่ที่อยู่การโหลด
ของส่วนต่ำสุดที่คัดลอกไปยังไฟล์ที่ส่งออก

เมื่อสร้าง S-record หรือไฟล์ไบนารีแบบ raw อาจเป็นประโยชน์ในการใช้ -S เพื่อลบ
ส่วนที่มีข้อมูลการดีบัก ในบางกรณี -R จะเป็นประโยชน์ในการลบ
ส่วนที่มีข้อมูลที่ไม่จำเป็นในไฟล์ไบนารี

บันทึก---สำเนา ไม่สามารถเปลี่ยน endianness ของไฟล์อินพุตได้ ถ้าอินพุต
รูปแบบมี endianness (บางรูปแบบไม่มี) สำเนา สามารถคัดลอกอินพุตลงในไฟล์เท่านั้น
รูปแบบที่มี endianness เหมือนกันหรือไม่มี endianness (เช่น การตรวจสอบ). (อย่างไรก็ตาม,
ดู --ย้อนกลับไบต์ ตัวเลือก.)

OPTIONS


แฟ้ม
ออกจากไฟล์
ไฟล์อินพุตและเอาต์พุตตามลำดับ ถ้าไม่ระบุ ออกจากไฟล์, สำเนา
สร้างไฟล์ชั่วคราวและเปลี่ยนชื่อผลลัพธ์อย่างทำลายล้างด้วยชื่อ แฟ้ม.

-I bfdname
--input-เป้าหมาย=bfdname
พิจารณารูปแบบอ็อบเจ็กต์ของไฟล์ต้นฉบับเป็น bfdnameแทนที่จะพยายาม
อนุมานมัน

-O bfdname
--output-เป้าหมาย=bfdname
เขียนไฟล์เอาต์พุตโดยใช้รูปแบบอ็อบเจ็กต์ bfdname.

-F bfdname
--เป้าหมาย=bfdname
ใช้ bfdname เป็นรูปแบบวัตถุสำหรับทั้งไฟล์อินพุตและเอาต์พุต กล่าวคือ ง่ายๆ
ถ่ายโอนข้อมูลจากต้นทางไปยังปลายทางโดยไม่มีการแปล

-B bfdarch
--ไบนารี-สถาปัตยกรรม=bfdarch
มีประโยชน์เมื่อแปลงไฟล์อินพุตที่ไม่มีสถาปัตยกรรมเป็นไฟล์อ็อบเจ็กต์ ในเรื่องนี้
กรณีสถาปัตยกรรมเอาต์พุตสามารถตั้งค่าเป็น bfdarch. ตัวเลือกนี้จะถูกละเว้นถ้า
ไฟล์อินพุตเป็นที่รู้จัก bfdarch. คุณสามารถเข้าถึงข้อมูลไบนารีนี้ภายในโปรแกรม
โดยอ้างอิงสัญลักษณ์พิเศษที่สร้างขึ้นโดยกระบวนการแปลง เหล่านี้
สัญลักษณ์เรียกว่า _binary_อ็อบเจกต์ไฟล์_start, _ไบนารี_อ็อบเจกต์ไฟล์_end และ
_ไบนารี่_อ็อบเจกต์ไฟล์_ขนาด. เช่น คุณสามารถแปลงไฟล์รูปภาพเป็นไฟล์อ็อบเจ็กต์และ
จากนั้นเข้าถึงในรหัสของคุณโดยใช้สัญลักษณ์เหล่านี้

-j รูปแบบมาตรา
--เฉพาะส่วน=รูปแบบมาตรา
คัดลอกเฉพาะส่วนที่ระบุจากไฟล์อินพุตไปยังไฟล์เอาต์พุต ตัวเลือกนี้
อาจได้รับมากกว่าหนึ่งครั้ง โปรดทราบว่าการใช้ตัวเลือกนี้อย่างไม่เหมาะสมอาจทำให้
ไฟล์เอาต์พุตใช้ไม่ได้ อักขระตัวแทนได้รับการยอมรับใน รูปแบบมาตรา.

-R รูปแบบมาตรา
--remove-section=รูปแบบมาตรา
ลบส่วนใด ๆ ที่ตรงกัน รูปแบบมาตรา จากไฟล์ที่ส่งออก ตัวเลือกนี้อาจจะเป็น
ให้มากกว่าหนึ่งครั้ง โปรดทราบว่าการใช้ตัวเลือกนี้อย่างไม่เหมาะสมอาจทำให้ผลลัพธ์
ไฟล์ใช้งานไม่ได้ อักขระตัวแทนได้รับการยอมรับใน รูปแบบมาตรา. ใช้ทั้ง -j
และ -R ตัวเลือกร่วมกันส่งผลให้เกิดพฤติกรรมที่ไม่ได้กำหนดไว้

-S
--แถบทั้งหมด
ห้ามคัดลอกข้อมูลการย้ายตำแหน่งและสัญลักษณ์จากไฟล์ต้นทาง

-g
--สตริป-ดีบัก
ห้ามคัดลอกสัญลักษณ์การดีบักหรือส่วนต่างๆ จากไฟล์ต้นทาง

--แถบ-ไม่จำเป็น
ถอดสัญลักษณ์ทั้งหมดที่ไม่จำเป็นสำหรับการประมวลผลการย้ายตำแหน่ง

-K ชื่อสัญลักษณ์
--keep-สัญลักษณ์=ชื่อสัญลักษณ์
เมื่อลอกสัญลักษณ์ ให้เก็บสัญลักษณ์ไว้ ชื่อสัญลักษณ์ ถึงแม้ว่าปกติจะถูกถอดออกก็ตาม
ตัวเลือกนี้อาจจะได้รับมากกว่าหนึ่งครั้ง.

-N ชื่อสัญลักษณ์
--แถบ-สัญลักษณ์=ชื่อสัญลักษณ์
ห้ามคัดลอกสัญลักษณ์ ชื่อสัญลักษณ์ จากไฟล์ต้นทาง ตัวเลือกนี้อาจได้รับเพิ่มเติม
มากกว่าหนึ่งครั้ง

--แถบ-ไม่จำเป็น-สัญลักษณ์=ชื่อสัญลักษณ์
ห้ามคัดลอกสัญลักษณ์ ชื่อสัญลักษณ์ จากไฟล์ต้นฉบับเว้นแต่จะจำเป็นโดยa
การย้ายถิ่นฐาน ตัวเลือกนี้อาจจะได้รับมากกว่าหนึ่งครั้ง.

-G ชื่อสัญลักษณ์
--keep-global-สัญลักษณ์=ชื่อสัญลักษณ์
เก็บแต่สัญลักษณ์ ชื่อสัญลักษณ์ ทั่วโลก. ทำให้สัญลักษณ์อื่น ๆ ทั้งหมดอยู่ในไฟล์เพื่อให้
พวกเขาจะมองไม่เห็นภายนอก ตัวเลือกนี้อาจจะได้รับมากกว่าหนึ่งครั้ง.

--localize-ซ่อน
ในวัตถุ ELF ให้ทำเครื่องหมายสัญลักษณ์ทั้งหมดที่มีการมองเห็นที่ซ่อนอยู่หรือภายในเป็นแบบโลคัล
ตัวเลือกนี้ใช้กับตัวเลือกการแปลเฉพาะสัญลักษณ์ เช่น -L.

-L ชื่อสัญลักษณ์
--localize-สัญลักษณ์=ชื่อสัญลักษณ์
ทำสัญลักษณ์ ชื่อสัญลักษณ์ โลคัลไปยังไฟล์เพื่อไม่ให้มองเห็นได้จากภายนอก นี้
อาจให้ตัวเลือกมากกว่าหนึ่งครั้ง

-W ชื่อสัญลักษณ์
--อ่อนแอ-สัญลักษณ์=ชื่อสัญลักษณ์
ทำสัญลักษณ์ ชื่อสัญลักษณ์ อ่อนแอ. ตัวเลือกนี้อาจจะได้รับมากกว่าหนึ่งครั้ง.

--globalize-สัญลักษณ์=ชื่อสัญลักษณ์
ให้สัญลักษณ์ ชื่อสัญลักษณ์ การกำหนดขอบเขตทั่วโลกเพื่อให้มองเห็นได้ภายนอกไฟล์ใน
ซึ่งถูกกำหนดไว้ ตัวเลือกนี้อาจจะได้รับมากกว่าหนึ่งครั้ง.

-w
--ไวลด์การ์ด
อนุญาตนิพจน์ทั่วไปใน ชื่อสัญลักษณ์ที่ใช้ในตัวเลือกบรรทัดคำสั่งอื่นๆ NS
เครื่องหมายคำถาม (?) เครื่องหมายดอกจัน (*) แบ็กสแลช (\) และเครื่องหมายวงเล็บเหลี่ยม ([]) ได้
ใช้ได้ทุกที่ในชื่อสัญลักษณ์ หากอักขระตัวแรกของชื่อสัญลักษณ์คือ
เครื่องหมายอัศเจรีย์ (!) จากนั้นความรู้สึกของสวิตช์จะกลับกันสำหรับสัญลักษณ์นั้น สำหรับ
ตัวอย่าง:

-w -W !foo -W สำหรับ*

จะทำให้ objcopy ทำให้สัญลักษณ์ทั้งหมดที่ขึ้นต้นด้วย "fo" อ่อนลงยกเว้นสัญลักษณ์
"ฟู".

-x
--ทิ้งทั้งหมด
ห้ามคัดลอกสัญลักษณ์ที่ไม่ใช่ส่วนกลางจากไฟล์ต้นทาง

-X
--ทิ้ง-ชาวบ้าน
อย่าคัดลอกสัญลักษณ์ท้องถิ่นที่สร้างโดยคอมไพเลอร์ (ซึ่งมักจะขึ้นต้นด้วย L or ..)

-b ไบต์
--ไบต์=ไบต์
หากเปิดใช้งานการสอดแทรกผ่าน --แทรก ตัวเลือกแล้วเริ่มช่วงของ
ไบต์ที่จะเก็บไว้ที่ ไบต์ไบต์ที่ ไบต์ สามารถอยู่ในช่วงตั้งแต่ 0 ถึง ความกว้าง-1 โดยที่
ความกว้าง คือค่าที่กำหนดโดย --แทรก ตัวเลือก

-i [ความกว้าง]
--อินเตอร์ลีฟ[=ความกว้าง]
คัดลอกช่วงจากทุก .เท่านั้น ความกว้าง ไบต์ (ข้อมูลส่วนหัวจะไม่ได้รับผลกระทบ) เลือก
ไบต์ใดในช่วงเริ่มต้นการคัดลอกด้วย --ไบต์ ตัวเลือก. เลือกความกว้างของ
ช่วงที่มี --interleave-ความกว้าง ตัวเลือก

ตัวเลือกนี้มีประโยชน์สำหรับการสร้างไฟล์ไปยังโปรแกรม ROM มักใช้กับ an
เป้าหมายเอาต์พุต "srec" สังเกตว่า สำเนา จะบ่นถ้าคุณไม่ระบุ
--ไบต์ ตัวเลือกด้วย

ความกว้างอินเตอร์ลีฟเริ่มต้นคือ 4 ดังนั้นด้วย --ไบต์ ตั้งเป็น 0 สำเนา จะคัดลอก
ไบต์แรกของทุก ๆ สี่ไบต์จากอินพุตไปยังเอาต์พุต

--interleave-ความกว้าง=ความกว้าง
เมื่อใช้ร่วมกับ --แทรก ตัวเลือก คัดลอก ความกว้าง ไบต์ในแต่ละครั้ง จุดเริ่มต้นของ
ช่วงของไบต์ที่จะคัดลอกถูกกำหนดโดย --ไบต์ ตัวเลือกและขอบเขตของช่วง
ถูกกำหนดด้วย --แทรก ตัวเลือก

ค่าเริ่มต้นสำหรับตัวเลือกนี้คือ 1 ค่าของ ความกว้าง บวก ไบต์ ค่าที่กำหนดโดย
--ไบต์ ตัวเลือกต้องไม่เกินความกว้าง interleave ที่กำหนดโดย --แทรก
ตัวเลือก

สามารถใช้ตัวเลือกนี้เพื่อสร้างภาพสำหรับแฟลช 16 บิตสองตัวที่สอดแทรกอยู่ใน a
บัส 32 บิตโดยผ่าน -b 0 -i 4 --interleave-ความกว้าง=2 และ -b 2 -i 4
--interleave-ความกว้าง=2 ถึงสอง สำเนา คำสั่ง หากอินพุตเป็น '12345678' แสดงว่า
เอาต์พุตจะเป็น '1256' และ '3478' ตามลำดับ

-p
-- เก็บรักษาวันที่
ตั้งค่าวันที่เข้าถึงและแก้ไขของไฟล์เอาต์พุตให้เหมือนกับของ
ไฟล์อินพุต

-D
--enable-deterministic-คลังเก็บ
ดำเนินการใน กำหนด โหมด. เมื่อคัดลอกสมาชิกที่เก็บถาวรและเขียนไฟล์เก็บถาวร
ดัชนี ใช้ศูนย์สำหรับ UID, GID, การประทับเวลา และใช้โหมดไฟล์ที่สอดคล้องกันสำหรับทุกคน
ไฟล์

If ไบนูทิลส์ ถูกกำหนดค่าด้วย --enable-deterministic-คลังเก็บ, จากนั้นโหมดนี้จะเปิดขึ้น
โดยค่าเริ่มต้น. มันสามารถปิดการใช้งานด้วย -U ตัวเลือกด้านล่าง

-U
--disable-deterministic-คลังเก็บ
Do ไม่ ทำงานใน กำหนด โหมด. นี่คือค่าผกผันของ -D ตัวเลือกด้านบน:
เมื่อคัดลอกสมาชิกที่เก็บถาวรและเขียนดัชนีไฟล์เก็บถาวร ให้ใช้ UID, GID,
เวลาประทับและค่าโหมดไฟล์

นี่เป็นค่าเริ่มต้นเว้นแต่ ไบนูทิลส์ ถูกกำหนดค่าด้วย
--enable-deterministic-คลังเก็บ.

--debug
แปลงข้อมูลการดีบัก ถ้าเป็นไปได้ นี่ไม่ใช่ค่าเริ่มต้นเพราะ only
รองรับรูปแบบการดีบักบางรูปแบบและกระบวนการแปลงสามารถใช้เวลา
บริโภค

--เติมช่องว่าง คลื่น
เติมช่องว่างระหว่างส่วนด้วย คลื่น. การดำเนินการนี้ใช้กับ โหลด ที่อยู่ (แอลเอ็มเอ)
ของส่วนต่างๆ ทำได้โดยการเพิ่มขนาดของส่วนที่มีส่วนล่าง
ที่อยู่และกรอกช่องว่างพิเศษที่สร้างขึ้นด้วย คลื่น.

--pad-เพื่อ ที่อยู่
แพดไฟล์เอาต์พุตจนถึงที่อยู่โหลด ที่อยู่. สิ่งนี้ทำได้โดยการเพิ่ม
ขนาดของส่วนสุดท้าย พื้นที่พิเศษเติมด้วยค่าที่ระบุโดย
--เติมช่องว่าง (ศูนย์เริ่มต้น)

--set-เริ่มต้น คลื่น
ตั้งค่าที่อยู่เริ่มต้นของไฟล์ใหม่เป็น คลื่น. ไม่รองรับรูปแบบไฟล์อ็อบเจ็กต์ทั้งหมด
การตั้งค่าที่อยู่เริ่มต้น

--เปลี่ยน-เริ่ม รวม
--ปรับ-เริ่ม รวม
เปลี่ยนที่อยู่เริ่มต้นโดยเพิ่ม รวม. ไม่ใช่ทุกรูปแบบไฟล์อ็อบเจ็กต์ที่รองรับการตั้งค่า
ที่อยู่เริ่มต้น

--เปลี่ยน-ที่อยู่ รวม
--adjust-vma รวม
เปลี่ยนที่อยู่ VMA และ LMA ของทุกส่วน รวมถึงที่อยู่เริ่มต้น โดย
เพิ่ม รวม. รูปแบบไฟล์อ็อบเจ็กต์บางรูปแบบไม่อนุญาตให้เปลี่ยนที่อยู่ของส่วน
โดยพลการ โปรดทราบว่าการดำเนินการนี้จะไม่ย้ายส่วนต่างๆ หากโปรแกรมคาดหวัง
ส่วนที่จะโหลดตามที่อยู่ที่แน่นอน และตัวเลือกนี้ใช้เพื่อเปลี่ยน
ส่วนต่าง ๆ ที่โหลดจากที่อยู่อื่น โปรแกรมอาจล้มเหลว

--เปลี่ยน-ส่วน-ที่อยู่ รูปแบบมาตรา-คลื่น
--adjust-section-vma รูปแบบมาตรา-คลื่น
ตั้งค่าหรือเปลี่ยนทั้งที่อยู่ VMA และที่อยู่ LMA ของส่วนที่ตรงกัน
รูปแบบมาตรา. ถ้า = ใช้ที่อยู่ส่วนถูกตั้งค่าเป็น คลื่น. มิฉะนั้น, คลื่น is
เพิ่มหรือลบออกจากที่อยู่ของส่วน ดูความคิดเห็นภายใต้
--เปลี่ยน-ที่อยู่, ข้างต้น. ถ้า รูปแบบมาตรา ไม่ตรงกับส่วนใด ๆ ในการป้อนข้อมูล
ไฟล์จะมีการออกคำเตือนเว้นแต่ --no-change-คำเตือน ถูกนำมาใช้.

--change-section-lma รูปแบบมาตรา-คลื่น
ตั้งค่าหรือเปลี่ยนที่อยู่ LMA ของส่วนที่ตรงกัน รูปแบบมาตรา. LMA
address คือ address ที่ส่วนนี้จะโหลดเข้าสู่หน่วยความจำที่โปรแกรมโหลด
เวลา. โดยปกติแล้วจะเหมือนกับที่อยู่ VMA ซึ่งเป็นที่อยู่ของ
ส่วนเวลารันโปรแกรม แต่ในบางระบบ โดยเฉพาะที่โปรแกรมอยู่
ใน ROM ทั้งสองสามารถแตกต่างกันได้ ถ้า = ใช้ที่อยู่ส่วนถูกตั้งค่าเป็น
คลื่น. มิฉะนั้น, คลื่น ถูกเพิ่มหรือลบออกจากที่อยู่ของส่วน ดู
ความคิดเห็นภายใต้ --เปลี่ยน-ที่อยู่, ข้างต้น. ถ้า รูปแบบมาตรา ไม่ตรงกันเลย
ส่วนในไฟล์อินพุตจะมีการออกคำเตือนเว้นแต่ --no-change-คำเตือน is
มือสอง

--เปลี่ยนส่วน-vma รูปแบบมาตรา-คลื่น
ตั้งค่าหรือเปลี่ยนที่อยู่ VMA ของส่วนที่ตรงกัน รูปแบบมาตรา. ที่อยู่ VMA
คือที่อยู่ของส่วนที่จะอยู่เมื่อโปรแกรมได้เริ่มต้นขึ้น
กำลังดำเนินการ โดยปกติแล้วจะเหมือนกับที่อยู่ LMA ซึ่งเป็นที่อยู่ที่
ส่วนจะถูกโหลดลงในหน่วยความจำ แต่ในบางระบบโดยเฉพาะที่
โปรแกรมถูกเก็บไว้ใน ROM ทั้งสองสามารถแตกต่างกันได้ ถ้า = ใช้ที่อยู่ส่วน
ถูกตั้งค่าเป็น คลื่น. มิฉะนั้น, คลื่น ถูกเพิ่มหรือลบออกจากที่อยู่ของส่วน
ดูความคิดเห็นภายใต้ --เปลี่ยน-ที่อยู่, ข้างต้น. ถ้า รูปแบบมาตรา ไม่ตรงกัน
ส่วนใด ๆ ในไฟล์อินพุตจะมีการออกคำเตือนเว้นแต่ --no-change-คำเตือน
ถูกนำมาใช้.

--เปลี่ยน-คำเตือน
--ปรับ-คำเตือน
If --เปลี่ยน-ส่วน-ที่อยู่ or --change-section-lma or --เปลี่ยนส่วน-vma ถูกนำมาใช้,
และรูปแบบส่วนไม่ตรงกับส่วนใด ๆ ให้ออกคำเตือน นี้เป็น
ค่าเริ่มต้น.

--no-change-คำเตือน
--no-adjust-คำเตือน
อย่าออกคำเตือนถ้า --เปลี่ยน-ส่วน-ที่อยู่ or --adjust-section-lma or
--adjust-section-vma ใช้แม้ว่ารูปแบบส่วนจะไม่ตรงกับส่วนใดๆ

--set-section-flag รูปแบบมาตรา=ธง
ตั้งค่าสถานะสำหรับส่วนใด ๆ ที่ตรงกัน รูปแบบมาตรา. ธง อาร์กิวเมนต์เป็นเครื่องหมายจุลภาค
แยกสตริงของชื่อแฟล็ก ชื่อที่รู้จักคือ จัดสรร, เนื้อหา, โหลด,
ไม่โหลด, อ่านเท่านั้น, รหัส, ข้อมูล, รอม, การแชร์และ การแก้ปัญหา. คุณสามารถตั้งค่า เนื้อหา ธง
สำหรับส่วนที่ไม่มีเนื้อหาแต่ไม่มีความหมายให้เคลียร์
เนื้อหา แฟล็กของส่วนที่มีเนื้อหา เพียงลบส่วนนั้นออกแทน
แฟล็กบางอันไม่มีความหมายสำหรับรูปแบบไฟล์อ็อบเจ็กต์ทั้งหมด

--เพิ่มส่วน ชื่อส่วน=ชื่อไฟล์
เพิ่มส่วนใหม่ชื่อ ชื่อส่วน ขณะคัดลอกไฟล์. เนื้อหาของใหม่
ส่วนถูกนำมาจากไฟล์ ชื่อไฟล์. ขนาดของส่วนจะเป็นขนาดของ
ไฟล์. ตัวเลือกนี้ใช้ได้เฉพาะกับรูปแบบไฟล์ที่สามารถรองรับส่วนต่างๆ ได้ด้วย
ชื่อโดยพลการ หมายเหตุ - อาจจำเป็นต้องใช้ --set-section-flag ตัวเลือก
กำหนดคุณสมบัติของส่วนที่สร้างขึ้นใหม่

--การถ่ายโอนข้อมูลส่วน ชื่อส่วน=ชื่อไฟล์
วางเนื้อหาของส่วนชื่อ ชื่อส่วน ลงในไฟล์ ชื่อไฟล์, การเขียนทับ
เนื้อหาใด ๆ ที่อาจมีก่อนหน้านี้ ตัวเลือกนี้เป็นค่าผกผันของ
--เพิ่มส่วน. ตัวเลือกนี้คล้ายกับ --เฉพาะส่วน ตัวเลือกยกเว้นว่า
ไม่ได้สร้างไฟล์ที่จัดรูปแบบ มันแค่ทิ้งเนื้อหาเป็นข้อมูลไบนารีดิบ
โดยไม่ต้องย้ายถิ่นฐานใดๆ สามารถระบุตัวเลือกได้มากกว่าหนึ่งครั้ง

--update-ส่วน ชื่อส่วน=ชื่อไฟล์
แทนที่เนื้อหาที่มีอยู่ของส่วนชื่อ ชื่อส่วน ด้วยเนื้อหาของไฟล์
ชื่อไฟล์. ขนาดของส่วนจะถูกปรับตามขนาดของไฟล์ NS
ส่วนแฟล็กสำหรับ ชื่อส่วน จะไม่เปลี่ยนแปลง สำหรับไฟล์รูปแบบ ELF ให้ไปที่
การแมปเซกเมนต์จะยังคงไม่เปลี่ยนแปลง ซึ่งเป็นสิ่งที่ใช้ไม่ได้
--ลบส่วน ตามมาด้วย --เพิ่มส่วน. ระบุตัวเลือกได้มากกว่า
ครั้งหนึ่ง

หมายเหตุ - สามารถใช้ได้ --เปลี่ยนชื่อ-section และ --update-ส่วน ทั้งอัพเดทและ
เปลี่ยนชื่อส่วนจากบรรทัดคำสั่งเดียว ในกรณีนี้ให้ส่งชื่อส่วนเดิม
ไปยัง --update-ส่วนและชื่อส่วนเดิมและใหม่เป็น --เปลี่ยนชื่อ-section.

--add-สัญลักษณ์ ชื่อ=[ส่วน:]ความคุ้มค่า[,ธง]
เพิ่มสัญลักษณ์ใหม่ชื่อ ชื่อ ขณะคัดลอกไฟล์. อาจมีการระบุตัวเลือกนี้
หลายครั้ง. ถ้า ส่วน จะได้รับสัญลักษณ์จะเชื่อมโยงกับและ
สัมพันธ์กับส่วนนั้น มิฉะนั้น จะเป็นสัญลักษณ์ ABS ระบุไม่ได้กำหนด
ส่วนจะส่งผลให้เกิดข้อผิดพลาดร้ายแรง ไม่มีการตรวจสอบมูลค่าก็จะเป็น
ถ่ายตามที่กำหนด สามารถระบุแฟล็กสัญลักษณ์ได้และไม่ใช่ทุกแฟล็กจะเป็น
มีความหมายสำหรับรูปแบบไฟล์ออบเจ็กต์ทั้งหมด โดยค่าเริ่มต้น สัญลักษณ์จะเป็นสากล NS
ธงพิเศษ 'ก่อน=คนอื่น ๆ' จะแทรกสัญลักษณ์ใหม่ไว้ข้างหน้าที่ระบุ
คนอื่น ๆมิฉะนั้นสัญลักษณ์จะถูกเพิ่มที่ส่วนท้ายของตารางสัญลักษณ์ใน
ลำดับที่ปรากฏ

--เปลี่ยนชื่อ-section ชื่อเก่า=ชื่อใหม่[,ธง]
เปลี่ยนชื่อส่วนจาก ชื่อเก่า ไปยัง ชื่อใหม่, ทางเลือกที่จะเปลี่ยนแฟล็กของส่วนเป็น
ธง ในกระบวนการ. มีข้อได้เปรียบเหนือ usng สคริปต์ตัวเชื่อมโยงเพื่อดำเนินการ
เปลี่ยนชื่อโดยที่เอาต์พุตยังคงเป็นไฟล์อ็อบเจ็กต์และไม่กลายเป็นลิงค์
ปฏิบัติการ

ตัวเลือกนี้มีประโยชน์อย่างยิ่งเมื่อรูปแบบอินพุตเป็นไบนารี เนื่องจากจะเป็น
สร้างส่วนที่เรียกว่า .data เสมอ ตัวอย่างเช่น คุณต้องการสร้าง a . แทน
ส่วนที่เรียกว่า .rodata ที่มีข้อมูลไบนารี คุณสามารถใช้บรรทัดคำสั่งต่อไปนี้
เพื่อให้บรรลุ:

objcopy -I ไบนารี -O -NS \
--เปลี่ยนชื่อส่วน .data=.rodata,alloc,load,readonly,data,contents


--ชื่อส่วนยาว {เปิด,ปิด,เก็บ}
ควบคุมการจัดการชื่อส่วนยาวเมื่อประมวลผล "COFF" และ "PE-COFF"
รูปแบบวัตถุ พฤติกรรมเริ่มต้น, เก็บ, คือการรักษาชื่อส่วนยาวถ้ามี
มีอยู่ในไฟล์อินพุต NS ทำให้สามารถ และ ปิดการใช้งาน ตัวเลือกบังคับเปิดใช้งานหรือ
ปิดการใช้งานชื่อส่วนยาวในวัตถุเอาท์พุท เมื่อไร ปิดการใช้งาน มีผลบังคับใช้
ชื่อส่วนยาวใดๆ ในวัตถุอินพุตจะถูกตัดทอน NS ทำให้สามารถ ตัวเลือก will
ปล่อยชื่อส่วนแบบยาวเท่านั้นหากมีอยู่ในอินพุต นี้ส่วนใหญ่เหมือนกัน
as เก็บแต่ถูกปล่อยทิ้งไว้โดยไม่ได้กำหนดว่า ทำให้สามารถ ตัวเลือกอาจบังคับให้สร้าง
ของตารางสตริงว่างในไฟล์เอาต์พุต

--เปลี่ยนผู้นำ-char
รูปแบบไฟล์อ็อบเจ็กต์บางรูปแบบใช้อักขระพิเศษที่จุดเริ่มต้นของสัญลักษณ์ ที่สุด
อักขระดังกล่าวทั่วไปคือขีดล่าง ซึ่งคอมไพเลอร์มักจะเพิ่มก่อนทุกสัญลักษณ์
ตัวเลือกนี้บอก สำเนา เพื่อเปลี่ยนอักขระนำของทุกสัญลักษณ์เมื่อ
แปลงระหว่างรูปแบบไฟล์อ็อบเจ็กต์ หากรูปแบบไฟล์อ็อบเจ็กต์ใช้หน้าเดียวกัน
อักขระ ตัวเลือกนี้ไม่มีผล มิฉะนั้นจะเพิ่มตัวอักษรหรือลบ
อักขระหรือเปลี่ยนอักขระตามความเหมาะสม

--remove-ชั้นนำ-char
หากอักขระตัวแรกของสัญลักษณ์สากลเป็นสัญลักษณ์พิเศษนำอักขระที่ใช้
ตามรูปแบบไฟล์อ็อบเจ็กต์ ให้ลบอักขระ สัญลักษณ์ที่พบบ่อยที่สุดนำ
ตัวอักษรเป็นขีดล่าง ตัวเลือกนี้จะลบขีดล่างชั้นนำออกจาก global . ทั้งหมด
สัญลักษณ์ สิ่งนี้มีประโยชน์หากคุณต้องการเชื่อมโยงวัตถุของไฟล์ต่าง ๆ เข้าด้วยกัน
รูปแบบที่มีข้อตกลงที่แตกต่างกันสำหรับชื่อสัญลักษณ์ ซึ่งแตกต่างจาก
--เปลี่ยนผู้นำ-char เพราะจะเปลี่ยนชื่อสัญลักษณ์ตามความเหมาะสมเสมอ
โดยไม่คำนึงถึงรูปแบบไฟล์อ็อบเจ็กต์ของไฟล์เอาต์พุต

--reverse ไบต์ =NUM
ย้อนกลับไบต์ในส่วนที่มีเนื้อหาเอาต์พุต ความยาวส่วนต้องเท่ากัน
หารด้วยมูลค่าที่กำหนดเพื่อให้สามารถแลกเปลี่ยนได้ ถอยหลัง
เกิดขึ้นก่อนดำเนินการอินเตอร์ลีฟ

โดยทั่วไปแล้วตัวเลือกนี้จะใช้ในการสร้างอิมเมจ ROM สำหรับระบบเป้าหมายที่มีปัญหา
ตัวอย่างเช่น บนกระดานเป้าหมายบางคำ คำ 32 บิตที่ดึงมาจาก ROM 8 บิตจะถูกเปลี่ยนใหม่
ประกอบในลำดับไบต์แบบ endian โดยไม่คำนึงถึงลำดับไบต์ของ CPU ขึ้นอยู่กับ
อาจจำเป็นต้องปรับเปลี่ยนรูปแบบการเขียนโปรแกรม endianness ของ ROM

พิจารณาไฟล์อย่างง่ายที่มีส่วนที่มีแปดไบต์ต่อไปนี้: 12345678

การใช้ --reverse ไบต์ = 2 สำหรับตัวอย่างข้างต้น ไบต์ในไฟล์เอาต์พุตจะเป็น
สั่ง 21436587

การใช้ --reverse ไบต์ = 4 สำหรับตัวอย่างข้างต้น ไบต์ในไฟล์เอาต์พุตจะเป็น
สั่ง 43218765

โดยใช้ --reverse ไบต์ = 2 สำหรับตัวอย่างข้างต้น ตามด้วย --reverse ไบต์ = 4 บน
ไฟล์เอาต์พุต ไบต์ในไฟล์เอาต์พุตที่สองจะเรียงลำดับ 34127856

--srec-เลน=ival
มีความหมายสำหรับเอาต์พุต srec เท่านั้น กำหนดความยาวสูงสุดของ Srecords เป็น
ผลิตเพื่อ ival. ความยาวนี้ครอบคลุมทั้งฟิลด์ที่อยู่ ข้อมูล และ crc

--srec-forceS3
มีความหมายสำหรับเอาต์พุต srec เท่านั้น หลีกเลี่ยงการสร้างระเบียน S1/S2 โดยสร้าง S3 เท่านั้น
รูปแบบบันทึก

--นิยามใหม่-sym เก่า=ใหม่
เปลี่ยนชื่อสัญลักษณ์ เก่า, To ใหม่. สิ่งนี้มีประโยชน์เมื่อพยายามเชื่อมโยง
สองสิ่งที่คุณไม่มีที่มาด้วยกันและมีการชนกันของชื่อ

--นิยามใหม่-syms=ชื่อไฟล์
ใช้ --นิยามใหม่-sym สำหรับแต่ละคู่สัญลักษณ์ "เก่า ใหม่" อยู่ในไฟล์ ชื่อไฟล์.
ชื่อไฟล์ เป็นเพียงไฟล์แฟล็ต โดยมีหนึ่งคู่สัญลักษณ์ต่อบรรทัด คอมเม้นท์ไลน์อาจจะ
แนะนำโดยอักขระแฮช ตัวเลือกนี้อาจจะได้รับมากกว่าหนึ่งครั้ง.

--อ่อนแอ
เปลี่ยนสัญลักษณ์สากลทั้งหมดในไฟล์ให้อ่อนแอ สิ่งนี้มีประโยชน์เมื่อสร้าง
วัตถุที่จะเชื่อมโยงกับวัตถุอื่นโดยใช้ -R ตัวเลือกไปยังตัวเชื่อมโยง
ตัวเลือกนี้จะมีผลเฉพาะเมื่อใช้รูปแบบไฟล์อ็อบเจ็กต์ที่รองรับรูปแบบอ่อนแอ
สัญลักษณ์

--keep-สัญลักษณ์=ชื่อไฟล์
ใช้ --keep-สัญลักษณ์ ตัวเลือกสำหรับแต่ละสัญลักษณ์ที่ระบุไว้ในไฟล์ ชื่อไฟล์. ชื่อไฟล์ is
ไฟล์แบนๆ ที่มีชื่อสัญลักษณ์หนึ่งชื่อต่อบรรทัด อาจมีการแนะนำความคิดเห็นในไลน์โดย
อักขระแฮช ตัวเลือกนี้อาจจะได้รับมากกว่าหนึ่งครั้ง.

--แถบ-สัญลักษณ์=ชื่อไฟล์
ใช้ --แถบ-สัญลักษณ์ ตัวเลือกสำหรับแต่ละสัญลักษณ์ที่ระบุไว้ในไฟล์ ชื่อไฟล์. ชื่อไฟล์ is
ไฟล์แบนๆ ที่มีชื่อสัญลักษณ์หนึ่งชื่อต่อบรรทัด อาจมีการแนะนำความคิดเห็นในไลน์โดย
อักขระแฮช ตัวเลือกนี้อาจจะได้รับมากกว่าหนึ่งครั้ง.

--แถบ-ไม่จำเป็น-สัญลักษณ์=ชื่อไฟล์
ใช้ --แถบ-ไม่จำเป็น-สัญลักษณ์ ตัวเลือกสำหรับแต่ละสัญลักษณ์ที่ระบุไว้ในไฟล์ ชื่อไฟล์.
ชื่อไฟล์ เป็นเพียงไฟล์แบนๆ โดยมีชื่อสัญลักษณ์หนึ่งชื่อต่อบรรทัด คอมเม้นท์ไลน์อาจจะ
แนะนำโดยอักขระแฮช ตัวเลือกนี้อาจจะได้รับมากกว่าหนึ่งครั้ง.

--keep-global-สัญลักษณ์=ชื่อไฟล์
ใช้ --keep-global-สัญลักษณ์ ตัวเลือกสำหรับแต่ละสัญลักษณ์ที่ระบุไว้ในไฟล์ ชื่อไฟล์.
ชื่อไฟล์ เป็นเพียงไฟล์แบนๆ โดยมีชื่อสัญลักษณ์หนึ่งชื่อต่อบรรทัด คอมเม้นท์ไลน์อาจจะ
แนะนำโดยอักขระแฮช ตัวเลือกนี้อาจจะได้รับมากกว่าหนึ่งครั้ง.

--localize-สัญลักษณ์=ชื่อไฟล์
ใช้ --localize-สัญลักษณ์ ตัวเลือกสำหรับแต่ละสัญลักษณ์ที่ระบุไว้ในไฟล์ ชื่อไฟล์. ชื่อไฟล์
เป็นเพียงไฟล์แบบแฟลตซึ่งมีชื่อสัญลักษณ์หนึ่งชื่อต่อบรรทัด อาจมีการแนะนำความคิดเห็นทางไลน์
โดยอักขระแฮช ตัวเลือกนี้อาจจะได้รับมากกว่าหนึ่งครั้ง.

--globalize-สัญลักษณ์=ชื่อไฟล์
ใช้ --globalize-สัญลักษณ์ ตัวเลือกสำหรับแต่ละสัญลักษณ์ที่ระบุไว้ในไฟล์ ชื่อไฟล์. ชื่อไฟล์
เป็นเพียงไฟล์แบบแฟลตซึ่งมีชื่อสัญลักษณ์หนึ่งชื่อต่อบรรทัด อาจมีการแนะนำความคิดเห็นทางไลน์
โดยอักขระแฮช ตัวเลือกนี้อาจจะได้รับมากกว่าหนึ่งครั้ง.

--อ่อนแอ-สัญลักษณ์=ชื่อไฟล์
ใช้ --อ่อนแอ-สัญลักษณ์ ตัวเลือกสำหรับแต่ละสัญลักษณ์ที่ระบุไว้ในไฟล์ ชื่อไฟล์. ชื่อไฟล์ is
ไฟล์แบนๆ ที่มีชื่อสัญลักษณ์หนึ่งชื่อต่อบรรทัด อาจมีการแนะนำความคิดเห็นในไลน์โดย
อักขระแฮช ตัวเลือกนี้อาจจะได้รับมากกว่าหนึ่งครั้ง.

--alt-รหัสเครื่อง=ดัชนี
หากสถาปัตยกรรมเอาต์พุตมีรหัสเครื่องอื่น ให้ใช้ ดัชนีรหัส th แทน
ของค่าเริ่มต้นหนึ่ง สิ่งนี้มีประโยชน์ในกรณีที่เครื่องได้รับรหัสอย่างเป็นทางการและ
ห่วงโซ่เครื่องมือใช้รหัสใหม่ แต่แอปพลิเคชันอื่นยังคงขึ้นอยู่กับ
มีการใช้รหัสเดิม สำหรับสถาปัตยกรรมที่ใช้ ELF ถ้า ดัชนี ทางเลือกไม่
ไม่มีอยู่ ค่าจะถือว่าเป็นจำนวนสัมบูรณ์ที่จะเก็บไว้ใน
ฟิลด์ e_machine ของส่วนหัวของ ELF

--เขียนได้-ข้อความ
ทำเครื่องหมายข้อความเอาต์พุตว่าเขียนได้ ตัวเลือกนี้ไม่มีความหมายสำหรับไฟล์อ็อบเจ็กต์ทั้งหมด
รูปแบบ

--readonly-ข้อความ
ทำให้ข้อความเอาต์พุตมีการป้องกัน ตัวเลือกนี้ไม่มีความหมายสำหรับวัตถุทั้งหมด
รูปแบบไฟล์

--บริสุทธิ์
ทำเครื่องหมายไฟล์เอาต์พุตเป็นเพจความต้องการ ตัวเลือกนี้ไม่มีความหมายสำหรับวัตถุทั้งหมด
รูปแบบไฟล์

--ไม่บริสุทธิ์
ทำเครื่องหมายไฟล์เอาต์พุตว่าไม่บริสุทธิ์ ตัวเลือกนี้ไม่มีความหมายสำหรับไฟล์อ็อบเจ็กต์ทั้งหมด
รูปแบบ

--prefix-สัญลักษณ์=เชือก
นำหน้าสัญลักษณ์ทั้งหมดในไฟล์เอาต์พุตด้วย เชือก.

--คำนำหน้า-section=เชือก
คำนำหน้าชื่อส่วนทั้งหมดในไฟล์ที่ส่งออกด้วย เชือก.

--prefix-alloc-section=เชือก
คำนำหน้าชื่อทั้งหมดของส่วนที่จัดสรรทั้งหมดในไฟล์เอาต์พุตด้วย เชือก.

--add-gnu-debuglink=เส้นทางสู่ไฟล์
สร้างส่วน .gnu_debuglink ซึ่งมีการอ้างอิงถึง เส้นทางสู่ไฟล์ และเพิ่ม
ไปยังไฟล์ที่ส่งออก หมายเหตุ: ไฟล์ที่ เส้นทางสู่ไฟล์ จะต้องมีอยู่ ส่วนหนึ่งของ
ขั้นตอนการเพิ่มส่วน .gnu_debuglink เกี่ยวข้องกับการฝังเช็คซัมของ
เนื้อหาของไฟล์ข้อมูลการดีบักในส่วน

หากไฟล์ข้อมูลการดีบักถูกสร้างขึ้นในที่เดียว แต่จะถูกติดตั้งที่a
ในภายหลังไปยังตำแหน่งอื่นแล้วอย่าใช้เส้นทางไปยังตำแหน่งที่ติดตั้ง
ที่ตั้ง. NS --เพิ่ม-gnu-debuglink ตัวเลือกจะล้มเหลวเนื่องจากไฟล์ที่ติดตั้งไม่
ยังไม่มี ให้ใส่ไฟล์ข้อมูลการดีบักในไดเร็กทอรีปัจจุบันแล้วใช้
--เพิ่ม-gnu-debuglink ตัวเลือกที่ไม่มีส่วนประกอบของไดเร็กทอรีดังนี้:

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

ในเวลาดีบัก โปรแกรมดีบั๊กจะพยายามค้นหาไฟล์ข้อมูลการดีบักแยกต่างหากใน a
ชุดของสถานที่ที่รู้จัก ชุดที่แน่นอนของสถานที่เหล่านี้แตกต่างกันไปขึ้นอยู่กับ
มีการใช้การแจกจ่าย แต่โดยทั่วไปจะรวมถึง:

"* ไดเร็กทอรีเดียวกันกับไฟล์เรียกทำงาน"
"* ไดเร็กทอรีย่อยของไดเร็กทอรีที่มีไฟล์เรียกทำงาน"
เรียกว่า .debug

"* ไดเร็กทอรีดีบักส่วนกลาง เช่น /usr/lib/debug"

ตราบใดที่มีการติดตั้งไฟล์ข้อมูลการดีบักในตำแหน่งเหล่านี้มาก่อน
ดีบักเกอร์ทำงานทุกอย่างควรทำงานอย่างถูกต้อง

--เก็บไฟล์-สัญลักษณ์
เมื่อทำการปอกไฟล์ บางทีด้วย --สตริป-ดีบัก or --แถบ-ไม่จำเป็น, เก็บใด ๆ
สัญลักษณ์ที่ระบุชื่อไฟล์ต้นทาง ซึ่งมิฉะนั้นจะถูกถอดออก

--เก็บ-ดีบักเท่านั้น
ปอกไฟล์ ลบเนื้อหาในส่วนใด ๆ ที่จะไม่ถูกปอกโดย
--สตริป-ดีบัก และปล่อยให้ส่วนการดีบักไม่เสียหาย ในไฟล์ ELF สิ่งนี้จะรักษา
ส่วนบันทึกย่อทั้งหมดในผลลัพธ์

หมายเหตุ - ส่วนหัวของส่วนต่างๆ
ขนาดแต่เนื้อหาในส่วนจะถูกยกเลิก ส่วนหัวคือ
รักษาไว้เพื่อให้เครื่องมืออื่นๆ สามารถจับคู่ไฟล์ debuginfo กับไฟล์จริงได้
ปฏิบัติการได้ แม้ว่าโปรแกรมปฏิบัติการนั้นจะถูกย้ายไปยังพื้นที่ที่อยู่อื่น

จุดประสงค์คือตัวเลือกนี้จะใช้ร่วมกับ --เพิ่ม-gnu-debuglink
เพื่อสร้างไฟล์ปฏิบัติการสองส่วน หนึ่งไบนารีที่ถูกปล้นซึ่งจะใช้พื้นที่น้อยลง
ใน RAM และในการแจกจ่ายและไฟล์ข้อมูลการดีบักที่สองซึ่งเป็นไฟล์เท่านั้น
จำเป็นหากต้องการความสามารถในการดีบัก ขั้นตอนที่แนะนำในการสร้างเหล่านี้
ไฟล์มีดังนี้:

1.
"ฟู" แล้ว...

1.
สร้างไฟล์ที่มีข้อมูลการดีบัก

1.
ถอดปฏิบัติการได้

1.
เพื่อเพิ่มลิงก์ไปยังข้อมูลการดีบักลงในไฟล์ปฏิบัติการที่ถูกถอดออก

หมายเหตุ---การเลือก ".dbg" เป็นส่วนขยายสำหรับไฟล์ข้อมูลการดีบักนั้นเป็นสิ่งที่ไม่พึงปรารถนา
ขั้นตอน "--only-keep-debug" ก็เป็นทางเลือกเช่นกัน คุณสามารถทำได้แทน:

1.
1.
1.
1.

กล่าวคือ ไฟล์ชี้ไปที่ --เพิ่ม-gnu-debuglink สามารถปฏิบัติการได้เต็มรูปแบบ มัน
ไม่จำเป็นต้องเป็นไฟล์ที่สร้างโดย --เก็บ-ดีบักเท่านั้น สวิตซ์.

หมายเหตุ --- สวิตช์นี้มีไว้สำหรับใช้กับไฟล์ที่เชื่อมโยงอย่างสมบูรณ์เท่านั้น มันไม่ได้ทำให้
รู้สึกที่จะใช้มันในไฟล์อ็อบเจ็กต์ที่ข้อมูลการดีบักอาจไม่สมบูรณ์
นอกจากคุณลักษณะ gnu_debuglink แล้ว ขณะนี้ยังสนับสนุนการมีอยู่ของชื่อไฟล์เดียวเท่านั้น
มีข้อมูลการดีบัก ไม่ใช่หลายชื่อไฟล์ในหนึ่งไฟล์ต่อหนึ่งอ็อบเจ็กต์
รากฐาน

--แถบ-dwo
ลบเนื้อหาของส่วน DWARF .dwo ทั้งหมดออกจากการดีบักที่เหลืออยู่
ส่วนและสัญลักษณ์ทั้งหมดไม่เสียหาย ตัวเลือกนี้มีไว้สำหรับใช้โดยคอมไพเลอร์ as
เป็นส่วนหนึ่งของ -gsplit คนแคระ ตัวเลือกซึ่งแยกข้อมูลการดีบักระหว่างไฟล์ .o
และไฟล์ .dwo แยกต่างหาก คอมไพเลอร์สร้างข้อมูลการดีบักทั้งหมดในที่เดียวกัน
ไฟล์แล้วใช้ the --แยก-dwo ตัวเลือกในการคัดลอกส่วน .dwo ไปยังไฟล์ .dwo
แล้ว --แถบ-dwo ตัวเลือกเพื่อลบส่วนเหล่านั้นออกจากไฟล์ .o ดั้งเดิม

--แยก-dwo
แยกเนื้อหาของส่วน DWARF .dwo ทั้งหมด ดู --แถบ-dwo ตัวเลือกเพิ่มเติม
ข้อมูล

--การจัดตำแหน่งไฟล์ NUM
ระบุการจัดตำแหน่งไฟล์ ส่วนต่างๆ ในไฟล์จะเริ่มต้นที่ file offsets . เสมอ
ซึ่งเป็นผลคูณของจำนวนนี้ ค่าเริ่มต้นนี้เป็น 512 [ตัวเลือกนี้เฉพาะ
สู่เป้าหมาย PE]

--กอง สำรอง
--กอง สำรอง,ผูกมัด
ระบุจำนวนไบต์ของหน่วยความจำที่จะสำรอง (และเลือกที่จะคอมมิต) เพื่อใช้เป็น
ฮีปสำหรับโปรแกรมนี้ [ตัวเลือกนี้เฉพาะกับเป้าหมาย PE]

--ภาพฐาน ความคุ้มค่า
ใช้ ความคุ้มค่า เป็นที่อยู่พื้นฐานของโปรแกรมหรือ dll ของคุณ นี่คือหน่วยความจำที่ต่ำที่สุด
ตำแหน่งที่จะใช้เมื่อโหลดโปรแกรมหรือ dll ของคุณ เพื่อลดความจำเป็นในการ
ย้ายและปรับปรุงประสิทธิภาพของ dll ของคุณ โดยแต่ละรายการควรมีที่อยู่ฐานที่ไม่ซ้ำกัน
และไม่ทับซ้อน dll อื่น ๆ ค่าดีฟอลต์คือ 0x400000 สำหรับไฟล์เรียกทำงาน และ
0x10000000 สำหรับ dll [ตัวเลือกนี้เฉพาะกับเป้าหมาย PE]

--ส่วนการจัดตำแหน่ง NUM
ตั้งค่าการจัดตำแหน่งส่วน ส่วนในหน่วยความจำจะเริ่มต้นตามที่อยู่ซึ่ง
เป็นผลคูณของจำนวนนี้ ค่าเริ่มต้นเป็น 0x1000 [ตัวเลือกนี้เฉพาะสำหรับ PE
เป้าหมาย.]

--ซ้อนกัน สำรอง
--ซ้อนกัน สำรอง,ผูกมัด
ระบุจำนวนไบต์ของหน่วยความจำที่จะสำรอง (และเลือกที่จะคอมมิต) เพื่อใช้เป็น
สแต็คสำหรับโปรแกรมนี้ [ตัวเลือกนี้เฉพาะกับเป้าหมาย PE]

--ระบบย่อย ที่
--ระบบย่อย ที่:สำคัญ
--ระบบย่อย ที่:สำคัญ.ผู้เยาว์
ระบุระบบย่อยที่โปรแกรมของคุณจะดำเนินการ ค่านิยมทางกฎหมายสำหรับ
ที่ คือ "เนทีฟ", "หน้าต่าง", "คอนโซล", "โพซิก", "แอป efi", "efi-bsd", "efi-rtd",
"sal-rtd" และ "xbox" คุณสามารถเลือกตั้งค่าเวอร์ชันของระบบย่อยได้เช่นกัน ตัวเลข
ค่ายังเป็นที่ยอมรับสำหรับ ที่. [ตัวเลือกนี้เฉพาะกับเป้าหมาย PE]

--extract-สัญลักษณ์
เก็บแฟล็กและสัญลักษณ์ส่วนของไฟล์ไว้ แต่ลบข้อมูลส่วนทั้งหมด โดยเฉพาะ
ทางเลือก:

*
*
*

ตัวเลือกนี้ใช้ในการสร้าง a .ซิม ไฟล์สำหรับเคอร์เนล VxWorks นอกจากนี้ยังสามารถเป็น
วิธีที่มีประโยชน์ในการลดขนาดของ a --เพียงแค่-สัญลักษณ์ ไฟล์อินพุตลิงเกอร์

--compress-debug-sections
บีบอัดส่วนการดีบัก DWARF โดยใช้ zlib ด้วย SHF_COMPRESSED จาก ELF ABI บันทึก -
ถ้าการบีบอัดจะสร้างส่วนได้จริง ที่มีขนาดใหญ่แล้วมันก็ไม่บีบอัด

--compress-debug-sections=none
--compress-debug-sections=zlib
--compress-debug-sections=zlib-gnu
--compress-debug-sections=zlib-gabi
สำหรับไฟล์ ELF ตัวเลือกเหล่านี้จะควบคุมวิธีบีบอัดส่วนดีบัก DWARF
--compress-debug-sections=none เทียบเท่ากับ --คลายการบีบอัด-debug-sections.
--compress-debug-sections=zlib และ --compress-debug-sections=zlib-gabi มีค่าเท่ากัน
ไปยัง --compress-debug-sections. --compress-debug-sections=zlib-gnu บีบอัด DWARF
ส่วนการดีบักโดยใช้ zlib ส่วนการดีบักถูกเปลี่ยนชื่อให้ขึ้นต้นด้วย .zdebug
แทน .debug. หมายเหตุ - ถ้าการบีบอัดจะสร้างส่วนได้จริง ที่มีขนาดใหญ่แล้ว
มันไม่ได้ถูกบีบอัดหรือเปลี่ยนชื่อ

--คลายการบีบอัด-debug-sections
ขยายส่วนการดีบัก DWARF โดยใช้ zlib ชื่อส่วนดั้งเดิมของ
ส่วนที่บีบอัดจะถูกกู้คืน

-V
--รุ่น
แสดงหมายเลขเวอร์ชันของ สำเนา.

-v
--รายละเอียด
เอาต์พุตแบบละเอียด: แสดงรายการไฟล์อ็อบเจ็กต์ทั้งหมดที่แก้ไข ในกรณีของจดหมายเหตุ สำเนา -V
แสดงรายการสมาชิกทั้งหมดของไฟล์เก็บถาวร

--ช่วยด้วย
แสดงบทสรุปของตัวเลือกเพื่อ สำเนา.

--ข้อมูล
แสดงรายการที่แสดงสถาปัตยกรรมและรูปแบบอ็อบเจ็กต์ทั้งหมดที่มี

@ไฟล์
อ่านตัวเลือกบรรทัดคำสั่งจาก ไฟล์. ตัวเลือกที่อ่านจะถูกแทรกแทนที่
ต้นฉบับ @ไฟล์ ตัวเลือก. ถ้า ไฟล์ ไม่มีอยู่หรือไม่สามารถอ่านได้ดังนั้นตัวเลือก
จะได้รับการปฏิบัติอย่างแท้จริงและจะไม่ถูกลบออก

ตัวเลือกใน ไฟล์ ถูกคั่นด้วยช่องว่าง อาจรวมอักขระช่องว่าง
ในตัวเลือกโดยล้อมรอบตัวเลือกทั้งหมดในเครื่องหมายคำพูดเดี่ยวหรือคู่ ใด ๆ
อักขระ (รวมถึงแบ็กสแลช) อาจรวมด้วยคำนำหน้าอักขระเป็น
รวมกับแบ็กสแลช NS ไฟล์ ตัวเองอาจมี @ เพิ่มเติมไฟล์ ตัวเลือก; ใด ๆ
ตัวเลือกดังกล่าวจะได้รับการประมวลผลซ้ำ

ใช้ mips-linux-gnu-objcopy ออนไลน์โดยใช้บริการ onworks.net


เซิร์ฟเวอร์และเวิร์กสเตชันฟรี

ดาวน์โหลดแอพ Windows & Linux

  • 1
    ปลั๊กอิน Eclipse Tomcat
    ปลั๊กอิน Eclipse Tomcat
    ปลั๊กอิน Eclipse Tomcat มีให้
    การรวมอย่างง่ายของ tomcat servlet
    คอนเทนเนอร์สำหรับการพัฒนา java
    เว็บแอปพลิเคชัน คุณสามารถเข้าร่วมกับเราสำหรับ
    อภิปราย...
    ดาวน์โหลดปลั๊กอิน Eclipse Tomcat
  • 2
    WebTorrent Desktop
    WebTorrent Desktop
    WebTorrent Desktop สำหรับการสตรีม
    torrents บน Mac, Windows หรือ Linux มัน
    เชื่อมต่อกับทั้ง BitTorrent และ
    WebTorrent เพียร์ ตอนนี้ไม่มี
    ต้องรอนาน...
    ดาวน์โหลดเดสก์ท็อป WebTorrent
  • 3
    GenX
    GenX
    GenX เป็นโปรแกรมทางวิทยาศาสตร์เพื่อปรับแต่ง
    การสะท้อนแสงของรังสีเอกซ์, นิวตรอน
    การสะท้อนแสงและการเอ็กซ์เรย์พื้นผิว
    ข้อมูลการเลี้ยวเบนโดยใช้ดิฟเฟอเรนเชียล
    อัลกอริธึมวิวัฒนาการ....
    ดาวน์โหลด GenX
  • 4
    pspp4หน้าต่าง
    pspp4หน้าต่าง
    PSPP เป็นโปรแกรมสำหรับสถิติ
    การวิเคราะห์ข้อมูลตัวอย่าง มันเป็นฟรี
    แทนที่โปรแกรมที่เป็นกรรมสิทธิ์
    สปส. PSPP มีทั้งแบบข้อความและ
    กราฟิกเรา...
    ดาวน์โหลด pspp4windows
  • 5
    ส่วนขยาย Git
    ส่วนขยาย Git
    Git Extensions เป็นเครื่องมือ UI แบบสแตนด์อโลน
    สำหรับจัดการที่เก็บ Git มันยัง
    ทำงานร่วมกับ Windows Explorer และ
    Microsoft Visual Studio
    (2015/2017/2019). ไทย...
    ดาวน์โหลดส่วนขยาย Git
  • 6
    eSpeak: การสังเคราะห์เสียงพูด
    eSpeak: การสังเคราะห์เสียงพูด
    เอ็นจิ้น Text to Speech สำหรับภาษาอังกฤษและ
    ภาษาอื่น ๆ อีกมากมาย ขนาดกระทัดรัดด้วย
    การออกเสียงที่ชัดเจน แต่ประดิษฐ์
    มีให้ในรูปแบบโปรแกรมบรรทัดคำสั่งด้วย
    มากมาย ...
    ดาวน์โหลด eSpeak: การสังเคราะห์เสียง
  • เพิ่มเติม»

คำสั่ง Linux

Ad