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

โลโก้

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

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

5.7.1. การติดตั้ง Glibc

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


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

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

ถัดไป เตรียม Glibc สำหรับการคอมไพล์:


../กำหนดค่า \

--prefix=/เครื่องมือ \

--โฮสต์=$LFS_TGT \

--build=$(../scripts/config.guess) \

--enable-เคอร์เนล=3.2 \

--with-headers=/tools/include

../กำหนดค่า \

--prefix=/เครื่องมือ \

--โฮสต์=$LFS_TGT \

--build=$(../scripts/config.guess) \

--enable-เคอร์เนล=3.2 \

--with-headers=/tools/include

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

--host=$LFS_TGT, --build=$(../scripts/config.guess)

ผลรวมของสวิตช์เหล่านี้คือระบบบิลด์ของ Glibc กำหนดค่าตัวเองให้คอมไพล์ข้าม โดยใช้ cross-linker และ cross-compiler ใน /เครื่องมือ.

--enable-เคอร์เนล=3.2

สิ่งนี้บอกให้ Glibc รวบรวมไลบรารีที่รองรับ 3.2 และเคอร์เนล Linux ที่ใหม่กว่า วิธีแก้ปัญหาสำหรับเคอร์เนลที่เก่ากว่าไม่ได้เปิดใช้งาน

--with-headers=/tools/include

สิ่งนี้บอกให้ Glibc คอมไพล์ตัวเองกับส่วนหัวที่เพิ่งติดตั้งไปยังไดเร็กทอรี tools เพื่อให้รู้ว่าเคอร์เนลมีคุณสมบัติใดและสามารถเพิ่มประสิทธิภาพได้เองตามนั้น

ในระหว่างขั้นตอนนี้ คำเตือนต่อไปนี้อาจปรากฏขึ้น:


กำหนดค่า: คำเตือน:

*** โปรแกรมเสริมเหล่านี้หายไปหรือ

*** เวอร์ชันที่เข้ากันไม่ได้: msgfmt

*** คุณสมบัติบางอย่างจะถูกปิดการใช้งาน

*** ตรวจสอบไฟล์ INSTALL สำหรับเวอร์ชันที่ต้องการ

กำหนดค่า: คำเตือน:

*** โปรแกรมเสริมเหล่านี้หายไปหรือ

*** เวอร์ชันที่เข้ากันไม่ได้: msgfmt

*** คุณสมบัติบางอย่างจะถูกปิดการใช้งาน

*** ตรวจสอบไฟล์ INSTALL สำหรับเวอร์ชันที่ต้องการ


ภาพ

ที่ขาดหายไปหรือเข้ากันไม่ได้ msgfmt โปรแกรมโดยทั่วไปไม่เป็นอันตราย นี้ msgfmt โปรแกรมเป็นส่วนหนึ่งของแพ็คเกจ Gettext ซึ่งการแจกจ่ายโฮสต์ควรมีให้


หมายเหตุ

มีรายงานว่าแพ็คเกจนี้อาจล้มเหลวเมื่อสร้างเป็น "ยี่ห้อคู่ขนาน" หากสิ่งนี้เกิดขึ้น ให้รันคำสั่ง make อีกครั้งด้วยตัวเลือก "-j1"

หมายเหตุ

มีรายงานว่าแพ็คเกจนี้อาจล้มเหลวเมื่อสร้างเป็น "ยี่ห้อคู่ขนาน" หากสิ่งนี้เกิดขึ้น ให้รันคำสั่ง make อีกครั้งด้วยตัวเลือก "-j1"


รวบรวมแพ็คเกจ:


ทำ

ทำ

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


ให้ติดตั้ง

ให้ติดตั้ง


ภาพ

คำเตือน

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


echo 'int main(){}' > dummy.c

$LFS_TGT-gcc หุ่นจำลอง.c

readelf -l a.out | grep ': / เครื่องมือ'

echo 'int main(){}' > dummy.c

$LFS_TGT-gcc หุ่นจำลอง.c

readelf -l a.out | grep ': / เครื่องมือ'

หากทุกอย่างทำงานอย่างถูกต้อง จะไม่มีข้อผิดพลาด และผลลัพธ์ของคำสั่งสุดท้ายจะอยู่ในรูปแบบ:


[กำลังขอโปรแกรมล่าม: /tools/lib64/ld-linux-x86-64.so.2]

[กำลังขอโปรแกรมล่าม: /tools/lib64/ld-linux-x86-64.so.2]

โปรดทราบว่าสำหรับเครื่อง 32 บิต ชื่อล่ามจะเป็น /tools/lib/ld-linux.so.2.

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

เมื่อเรียบร้อยแล้ว ให้ล้างไฟล์ทดสอบ:


rm -v dummy.c a.out

rm -v dummy.c a.out


หมายเหตุ

การสร้าง Binutils ในส่วนถัดไปจะทำหน้าที่เป็นการตรวจสอบเพิ่มเติมว่า toolchain ได้ถูกสร้างขึ้นอย่างเหมาะสมแล้ว หาก Binutils ไม่สามารถสร้างได้ แสดงว่ามีบางอย่างผิดพลาดกับการติดตั้ง Binutils, GCC หรือ Glibc ก่อนหน้านี้

หมายเหตุ

การสร้าง Binutils ในส่วนถัดไปจะทำหน้าที่เป็นการตรวจสอบเพิ่มเติมว่า toolchain ได้ถูกสร้างขึ้นอย่างเหมาะสมแล้ว หาก Binutils ไม่สามารถสร้างได้ แสดงว่ามีบางอย่างผิดพลาดกับการติดตั้ง Binutils, GCC หรือ Glibc ก่อนหน้านี้

ภาพ

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