สารบัญ
ใช้เครื่องมือรูทบิลด์เพื่อสร้างเฟิร์มแวร์ RV1126 IMG
ใช้เครื่องมือรูทสำหรับสร้างแพ็คเกจไฟล์ปฏิบัติการที่คุณคอมไพล์ลงในเฟิร์มแวร์ (ไฟล์ .img)
แนะนำสองวิธีทั่วไป
วิธี 1:
วางไฟล์ปฏิบัติการที่คอมไพล์แล้วไว้ในไดเร็กทอรี buildroot/board/rockchip/rv1126_rv1109/fs-overlay-sysv/etc/init.d ของ sdk, และคอมไพล์และแพ็คเกจทั้งหมด.
ตัวอย่างเช่น, ที่นี่ฉันได้ใส่ test-app ไฟล์ปฏิบัติการที่คอมไพล์แล้วลงในไดเร็กทอรี
- ต่อไป, เพียงแค่ต้องคอมไพล์เฟิร์มแวร์ทั้งหมดใหม่
คำสั่งในการคอมไพล์เฟิร์มแวร์คือ
- หลังจากเรียบเรียง. คุณจะเห็นแอปทดสอบ, ไฟล์ปฏิบัติการนี้, ในไดเร็กทอรี /etc/init.d ที่ส่วนท้ายของบอร์ด.
จากนั้นคุณสามารถเรียกใช้ได้, หรือคัดลอกไปยังไดเร็กทอรีอื่นแล้วรัน.
วิธีนี้เป็นวิธีที่ง่ายที่สุดและแนะนำมากที่สุด
วิธี 2:
ปฏิบัติตามกฎการคอมไพล์ SDK และเพิ่มโปรแกรมของคุณเองลงใน buildroot.
1) เพิ่มไฟล์ test.c
ในไดเร็กทอรีซอร์สโค้ด, สร้างโฟลเดอร์ APP ของคุณเองด้วยคำสั่งต่อไปนี้:
$แอป mkdir/mytest
ผลการวิ่งแสดงตามภาพด้านล่าง:
คุณสามารถสร้างโปรแกรม APP ของคุณเองได้ในไดเร็กทอรี mytest. ที่นี่ฉันจะสร้างรหัสทดสอบของ test.c, ตัวอย่าง
รหัสมีดังนี้
นิ่ง, ในไดเร็กทอรี mytest, สร้าง Makefile ที่รวบรวมโปรแกรม test.c. รหัสตัวอย่างมีดังนี้:
ผลลัพธ์การสร้างเสร็จสมบูรณ์ดังแสดงในรูปด้านล่าง:
2) เพิ่มในการตั้งค่าเมนู
เมื่อกำหนดค่าแพ็คเกจ buildroot, ทุกคนจำเป็นต้องเปิดใช้งานบนอินเทอร์เฟซการกำหนดค่าแบบกราฟิก, ดังนั้นของเรา
แอปยังต้องสร้างตัวเลือกด้วย. ภายใต้ซอร์สโค้ดของแพ็คเกจ SDK, เปิด “buildroot/แพ็คเกจ/Config.in” ไฟล์.
ข้ามไปยังจุดสุดท้าย “คนสุดท้าย” และเพิ่มโค้ดตัวอย่างต่อไปนี้ (บันทึก: จะต้องอยู่ก่อนเมนูสุดท้ายของไฟล์นี้
เพิ่มไปที่). รหัสมีลักษณะเช่นนี้:
ผลลัพธ์ของการบวกแสดงไว้ด้านล่าง:
No.2061 โอเค, มันถูกใช้ใน itsource อ้างถึง”package/mytest/Config.in” ไฟล์, ดังนั้นเราจึงจำเป็นต้องสร้าง
เพื่อสร้างไฟล์นี้, คำสั่งมีดังนี้:
$mkdir buildroot/แพ็คเกจ/mytest/
หลังจากสร้างไดเร็กทอรีแล้ว (mytest คือชื่อของแพ็กเกจแพ็กเกจภายใต้ buildroot), เราจำเป็นต้องสร้างไดเร็กทอรี mytest
“กำหนดค่าใน” ไฟล์, เนื้อหามีดังนี้:
ผลลัพธ์ของการบวกแสดงไว้ด้านล่าง:
- เวอร์ชันแอปและกฎการรวบรวม
ในส่วนก่อนหน้า, เราได้เพิ่ม APP ลงในตัวเลือกการกำหนดค่าแล้ว. ณ ขณะนี้, buildroot ยังไม่รู้ว่าต้องทำอย่างไร
ดาวน์โหลด, สารสกัด, รวบรวม, เป็นต้น, เราจำเป็นต้องเพิ่มไฟล์กำหนดค่าเพื่อบอกวิธีการทำงานของ buildroot, และเราจำเป็นต้องสร้าง “บิลด์รูท/
แพ็คเกจ/mytest/mytest.mk”, ชื่อต้องเป็น mytest.mk. คัดลอกโค้ดตัวอย่างต่อไปนี้ไปที่ mytest.mk
โค้ดตัวอย่างโค้ด mytest.mk
ไฟล์นี้จะบอก buildroot ถึงวิธีการคอมไพล์, ดาวน์โหลด, สำเนา, ฯลฯ. มาโครที่เป็นตัวพิมพ์ใหญ่ทั้งหมดเริ่มต้นด้วย “การทดสอบของฉัน”
ส่วนหัวถูกกำหนดตามชื่อแพ็คเกจของเรา.
ในบรรทัด 1, ตัวแปรที่ส่วนท้ายของ _VERSION คือเวอร์ชันซอร์สโค้ด.
ในบรรทัด 2, ตัวแปรที่ส่วนท้ายของ _SITE คือที่อยู่ของการดาวน์โหลดซอร์สโค้ด.
ในบรรทัด 3, ตัวแปรที่ส่วนท้ายของ _SITE_METHOD คือวิธีการดาวน์โหลดซอร์สโค้ด, และท้องถิ่นหมายถึงการดาวน์โหลดในเครื่อง.
เส้น 4 และ 10~12 จะดำเนินการติดตั้งโดยอัตโนมัติและคัดลอกไฟล์ที่ mytest ของเราเรียกใช้ลงในไดเร็กทอรี bin.
เส้น 6, ตัวแปรที่ส่วนท้ายของ _BUILD_CMDS จะถูกดำเนินการเมื่อมีการคอมไพล์เฟรมเวิร์ก buildroot, และใช้เพื่อเพิ่ม M ให้กับซอร์สโค้ด.
akefile ผ่านตัวเลือกการคอมไพล์และตัวเลือกการเชื่อมโยงและเรียก Makefile ของซอร์สโค้ด.
บรรทัดที่ 14~16 ให้สิทธิ์แก่ไฟล์.
เส้น 18, ฟังก์ชันนี้จะสร้างไฟล์ .mk ทั้งหมดลงในสคริปต์.
เข้าสู่
buildroot/เอาต์พุต/rockchip_rv1126_rv1109_spi_nand
ดำเนินการ make menuconfig
เปิดการทดสอบของฉัน
หลังจากตั้งค่าคอนฟิกเสร็จแล้ว, เราสามารถทดสอบได้ว่าสามารถรวบรวม mytest ของเราได้หรือไม่, ใน buildroot/output/rockchip_rv1126_rv1109_spi_nand
เพื่อทดสอบในไดเร็กทอรี, คำสั่งมีดังนี้:
$ทำการทดสอบของฉัน
ผลการวิ่งแสดงตามภาพด้านล่าง:

ถามคำถาม
ข้อความของคุณถูกส่งแล้ว