เวิร์กสเตชันออนไลน์ของ OnWorks Linux และ Windows

โลโก้

ฟรีโฮสติ้งออนไลน์สำหรับเวิร์กสเตชัน

<ก่อนหน้านี้ | Contents | ถัดไป>

5.4.1. การติดตั้ง Cross Binutils


หมายเหตุ

กลับไปอ่านบันทึกย่อในส่วนก่อนหน้าอีกครั้ง การทำความเข้าใจบันทึกย่อที่ระบุว่าสำคัญจะช่วยคุณแก้ปัญหาได้มากในภายหลัง

หมายเหตุ

กลับไปอ่านบันทึกย่อในส่วนก่อนหน้าอีกครั้ง การทำความเข้าใจบันทึกย่อที่ระบุว่าสำคัญจะช่วยคุณแก้ปัญหาได้มากในภายหลัง

เป็นสิ่งสำคัญที่ Binutils จะต้องเป็นแพ็คเกจแรกที่คอมไพล์เพราะทั้ง Glibc และ GCC ทำการทดสอบต่างๆ บนตัวเชื่อมโยงและแอสเซมเบลอร์ที่มีอยู่ เพื่อกำหนดคุณสมบัติที่จะเปิดใช้งาน

ภาพ

เอกสารประกอบของ Binutils แนะนำให้สร้าง Binutils ในไดเร็กทอรีบิลด์เฉพาะ:


mkdir -v บิลด์ซีดี

mkdir -v บิลด์ซีดี


หมายเหตุ

เพื่อให้ค่า SBU ที่ระบุไว้ในส่วนที่เหลือของหนังสือมีประโยชน์ ให้วัดเวลาที่ใช้ในการสร้างแพ็คเกจนี้จากการกำหนดค่า สูงสุดและรวมถึงการติดตั้งครั้งแรก เพื่อให้บรรลุสิ่งนี้อย่างง่ายดาย ให้ห่อคำสั่งใน a เวลา คำสั่งเช่นนี้: เวลา { ./configure ... && ... && ทำการติดตั้ง; }.

หมายเหตุ

เพื่อให้ค่า SBU ที่ระบุไว้ในส่วนที่เหลือของหนังสือมีประโยชน์ ให้วัดเวลาที่ใช้ในการสร้างแพ็คเกจนี้จากการกำหนดค่า สูงสุดและรวมถึงการติดตั้งครั้งแรก เพื่อให้บรรลุสิ่งนี้อย่างง่ายดาย ให้ห่อคำสั่งใน a เวลา คำสั่งเช่นนี้: เวลา { ./configure ... && ... && ทำการติดตั้ง; }.


หมายเหตุ

ค่า SBU ของบิลด์โดยประมาณและพื้นที่ดิสก์ที่ต้องการในบทที่ 5 ไม่รวมข้อมูลชุดทดสอบ

หมายเหตุ

ค่า SBU ของบิลด์โดยประมาณและพื้นที่ดิสก์ที่ต้องการในบทที่ 5 ไม่รวมข้อมูลชุดทดสอบ


ภาพ

ตอนนี้เตรียม Binutils สำหรับการรวบรวม:


../configure --prefix=/tools \

--with-sysroot=$LFS \

--with-lib-path=/tools/lib \

--เป้าหมาย=$LFS_TGT \

--disable-nls \

--disable-ข้อผิดพลาด

../configure --prefix=/tools \

--with-sysroot=$LFS \

--with-lib-path=/tools/lib \

--เป้าหมาย=$LFS_TGT \

--disable-nls \

--disable-ข้อผิดพลาด


ความหมายของตัวเลือกการกำหนดค่า:


--คำนำหน้า=/เครื่องมือ

สิ่งนี้จะบอกสคริปต์กำหนดค่าเพื่อเตรียมติดตั้งโปรแกรม Binutils ใน /เครื่องมือ ไดเรกทอรี

--with-sysroot=$LFS

สำหรับการคอมไพล์ข้าม สิ่งนี้บอกให้ระบบบิลด์ค้นหาไลบรารีระบบเป้าหมายใน $LFS ตามความจำเป็น

--with-lib-path=/tools/lib

ระบุพาธของไลบรารีที่ตัวเชื่อมโยงควรได้รับการกำหนดค่าให้ใช้


--เป้าหมาย=$LFS_TGT

เนื่องจากคำอธิบายเครื่องใน LFS_TGT ตัวแปรจะแตกต่างจากค่าที่ส่งกลับโดย .เล็กน้อย config.เดา สคริปต์สวิตช์นี้จะบอก กำหนดค่า สคริปต์เพื่อปรับระบบบิลด์ของ Binutil สำหรับการสร้างตัวเชื่อมโยงข้าม

--disable-nls

การดำเนินการนี้จะปิดใช้งานการทำให้เป็นสากลเนื่องจากไม่จำเป็นต้องใช้ i18n สำหรับเครื่องมือชั่วคราว

--disable-ข้อผิดพลาด

สิ่งนี้จะป้องกันไม่ให้บิลด์หยุดในกรณีที่มีคำเตือนจากคอมไพเลอร์ของโฮสต์

ดำเนินการรวบรวมแพ็คเกจต่อไป:


ทำ

ทำ

การรวบรวมเสร็จสมบูรณ์แล้ว โดยปกติเราจะเรียกใช้ชุดทดสอบ แต่ในช่วงเริ่มต้นนี้ เฟรมเวิร์กชุดทดสอบ (Tcl, Expect และ DejaGNU) ยังไม่สามารถใช้งานได้ ประโยชน์ของการทำการทดสอบ ณ จุดนี้มีน้อยมาก เนื่องจากโปรแกรมจากรอบแรกนี้จะถูกแทนที่ด้วยโปรแกรมจากรอบที่สองในไม่ช้า

หากสร้างบน x86_64 ให้สร้าง symlink เพื่อรับรองความถูกต้องของ toolchain:


กรณี $(uname -m) ใน

x86_64) mkdir -v /tools/lib && ln -sv lib /tools/lib64 ;; esac

กรณี $(uname -m) ใน

x86_64) mkdir -v /tools/lib && ln -sv lib /tools/lib64 ;; esac

ติดตั้งแพ็คเกจ:


ให้ติดตั้ง

ให้ติดตั้ง

ระบบปฏิบัติการคลาวด์คอมพิวติ้งยอดนิยมที่ OnWorks: