<ก่อนหน้านี้ | Contents | ถัดไป>
6.16.1. การติดตั้งไบนูทิลส์
ตรวจสอบว่า PTY ทำงานอย่างถูกต้องในสภาพแวดล้อม chroot โดยทำการทดสอบอย่างง่าย:
คาดหวัง -c "spawn ls"
คาดหวัง -c "spawn ls"
คำสั่งนี้ควรแสดงผลต่อไปนี้:
วางไข่ ls
วางไข่ ls
หากเอาต์พุตมีข้อความด้านล่างแทน แสดงว่าสภาพแวดล้อมไม่ได้ตั้งค่าไว้สำหรับการดำเนินการ PTY ที่เหมาะสม ปัญหานี้ต้องได้รับการแก้ไขก่อนเรียกใช้ชุดทดสอบสำหรับ Binutils และ GCC:
ระบบไม่มี ptys อีกต่อไป
ขอให้ผู้ดูแลระบบของคุณสร้างเพิ่มเติม
ระบบไม่มี ptys อีกต่อไป
ขอให้ผู้ดูแลระบบของคุณสร้างเพิ่มเติม
ตอนนี้ลบหนึ่งการทดสอบที่ป้องกันไม่ให้การทดสอบทำงานจนเสร็จสิ้น:
sed -i '/@\tincremental_copy/d' gold/testsuite/Makefile.in
sed -i '/@\tincremental_copy/d' gold/testsuite/Makefile.in
เอกสารประกอบของ Binutils แนะนำให้สร้าง Binutils ในไดเร็กทอรีบิลด์เฉพาะ:
mkdir -v บิลด์ซีดี
mkdir -v บิลด์ซีดี
เตรียม Binutils สำหรับการรวบรวม:
../กำหนดค่า --prefix=/usr \
--enable-ทอง \
--enable-ld=ค่าเริ่มต้น \
--enable-ปลั๊กอิน \
-- เปิดใช้งานร่วมกัน \
--disable-werror \
--enable-64-bit-bfd \
--กับ-ระบบ-zlib
../กำหนดค่า --prefix=/usr \
--enable-ทอง \
--enable-ld=ค่าเริ่มต้น \
--enable-ปลั๊กอิน \
-- เปิดใช้งานร่วมกัน \
--disable-werror \
--enable-64-bit-bfd \
--กับ-ระบบ-zlib
ความหมายของการกำหนดค่าพารามิเตอร์:
--enable-ทอง
สร้าง gold linker และติดตั้งเป็น ld.gold (ควบคู่ไปกับ linker เริ่มต้น)
--enable-ld = ค่าเริ่มต้น
สร้างตัวเชื่อมโยง bdf ดั้งเดิมและติดตั้งเป็นทั้ง ld (ตัวเชื่อมโยงเริ่มต้น) และ ld.bfd
--enable-ปลั๊กอิน
เปิดใช้งานการสนับสนุนปลั๊กอินสำหรับตัวเชื่อมโยง
--enable-64-bit-bfd
เปิดใช้งานการสนับสนุน 64 บิต (บนโฮสต์ที่มีขนาดคำแคบลง) อาจไม่จำเป็นบนระบบ 64 บิต แต่ไม่เป็นอันตราย
--กับ-ระบบ-zlib
ใช้ไลบรารี zlib ที่ติดตั้งไว้แทนที่จะสร้างเวอร์ชันที่รวมไว้
รวบรวมแพ็คเกจ:
ทำ tooldir=/usr
ทำ tooldir=/usr
ความหมายของพารามิเตอร์ make:
เครื่องมือ=/usr
โดยปกติ tooldir (ไดเร็กทอรีที่ไฟล์เรียกทำงานจะตั้งอยู่ในที่สุด) จะถูกตั้งค่าเป็น $(exec_ นำหน้า)/$(target_alias). ตัวอย่างเช่น เครื่อง x86_64 จะขยายเป็น /usr/x86_64- ที่ไม่รู้จัก-linux-gnu. เนื่องจากนี่คือระบบที่กำหนดเอง ไดเร็กทอรีเฉพาะเป้าหมายนี้ใน / usr ไม่จำเป็นต้องใช้.
$(exec_prefix)/$(target_alias) จะถูกใช้หากระบบถูกใช้เพื่อคอมไพล์ข้าม (เช่น การคอมไพล์แพ็คเกจบนเครื่อง Intel ที่สร้างโค้ดที่สามารถรันบนเครื่อง PowerPC)
สำคัญ
ชุดทดสอบสำหรับ Binutils ในส่วนนี้ถือว่ามีความสำคัญ ห้ามข้ามไม่ว่ากรณีใดๆ
สำคัญ
ชุดทดสอบสำหรับ Binutils ในส่วนนี้ถือว่ามีความสำคัญ ห้ามข้ามไม่ว่ากรณีใดๆ
ทดสอบผลลัพธ์:
ทำ -k ตรวจสอบ
ทำ -k ตรวจสอบ
การทดสอบออฟเซ็ตสัมพันธ์กับ PC และการทดสอบ debug_msg.sh อาจล้มเหลวในสภาพแวดล้อม LFS ติดตั้งแพ็คเกจ:
ทำ tooldir=/usr ติดตั้ง
ทำ tooldir=/usr ติดตั้ง