การประยุกต์ใช้ crosstool-NG มีจุดมุ่งหมายที่ toolchains อาคาร toolchains เป็นองค์ประกอบที่สำคัญในโครงการพัฒนาซอฟต์แวร์ มันจะรวบรวมรวบรวมและเชื่อมโยงรหัสที่ได้รับการพัฒนา บางชิ้นของ toolchain ในที่สุดก็จะจบลงในไบนารีผล / โอบอุ้ม: ห้องสมุดคงมี แต่ตัวอย่างเช่น
ดังนั้น toolchain เป็นชิ้นส่วนที่สำคัญมากของซอฟต์แวร์เป็นข้อผิดพลาดใด ๆ ในหนึ่งในองค์ประกอบหรือองค์ประกอบที่กำหนดค่าต่ำสามารถนำไปสู่ปัญหาการดำเนินการตั้งแต่ประสิทธิภาพที่ดีเพื่อการใช้งานที่ไม่คาดคิดที่สิ้นสุด, ซอฟแวร์ผิดพลาดพฤติกรรม (ซึ่ง มากกว่ามักจะเป็นเรื่องยากที่จะตรวจสอบ), ความเสียหายของฮาร์ดแวร์หรือแม้กระทั่งกับความเสี่ยงของมนุษย์ (ซึ่งเป็นมากกว่า regretable)
toolchains ที่ทำจากชิ้นส่วนที่แตกต่างกันของซอฟต์แวร์แต่ละเป็นที่ค่อนข้างซับซ้อนและต้องเลือกที่สร้างขึ้นเป็นพิเศษเพื่อสร้างและทำงานต่อเนื่อง นี้มักจะไม่ง่ายที่แม้ในกรณีที่ไม่ให้น่ารำคาญของ toolchains พื้นเมือง การทำงานถึงระดับที่สูงขึ้นของความซับซ้อนเมื่อมันมาถึงการรวบรวมข้ามที่มันจะกลายเป็นฝันร้ายเลยทีเดียว ...
บาง toolchains ข้ามอยู่บนอินเทอร์เน็ตและสามารถนำมาใช้ในการพัฒนาโดยทั่วไป แต่พวกเขามีจำนวนของข้อ จำกัด :
·พวกเขาสามารถใช้งานทั่วไปในการที่พวกเขามีการกำหนดค่าสำหรับส่วนใหญ่: การเพิ่มประสิทธิภาพไม่มีเป้าหมายที่เฉพาะเจาะจงของคุณ
·พวกเขาสามารถจะเตรียมไว้สำหรับเป้าหมายที่เฉพาะเจาะจงและดังนั้นจึงไม่ได้ใช้งานง่ายและไม่เหมาะสำหรับการหรือแม้กระทั่งการสนับสนุนเป้าหมายของคุณ
·พวกเขามักจะมีการใช้ชิ้นส่วนริ้วรอย (คอมไพเลอร์ C ห้องสมุด ฯลฯ ... ) ไม่สนับสนุนคุณลักษณะพิเศษของหน่วยประมวลผลใหม่ของคุณเงา;
ในอีกด้านหนึ่ง, toolchain เหล่านี้มีข้อได้เปรียบบางอย่าง
·พวกเขาพร้อมที่จะใช้และง่ายต่อการติดตั้งและการติดตั้ง
·พวกเขาจะได้รับการพิสูจน์แล้วถ้าใช้โดยชุมชนกว้าง
แต่เมื่อคุณต้องการที่จะได้รับทั้งหมดน้ำออกของฮาร์ดแวร์ที่เฉพาะเจาะจงของคุณคุณจะต้องการที่จะสร้าง toolchain ของคุณเอง นี่คือที่ crosstool-NG เข้ามาในเล่น
คุณสมบัติ .
- เคอร์เนลเหมือนอินเตอร์เฟซการตั้งค่า menuconfig
- แพร่หลายอินเตอร์เฟซที่รู้จักกันดี
- ง่าย แต่การกำหนดค่าที่มีประสิทธิภาพ
- การสนับสนุนสำหรับส่วนประกอบทางเลือกใน toolchain
- uClibc- หรือ toolchain glibc ตามการสนับสนุนในขณะนี้!
- อื่น ๆ ง่ายต่อการใช้
- ที่เก็บแพทช์สำหรับรุ่นผู้ที่ต้องปะ
- การสนับสนุนหลายรุ่นของส่วนประกอบ toolchain
- การสนับสนุนสำหรับการกำหนดเอง (เข้าใจท้องถิ่น) ที่เก็บแพทช์
- เธรดรุ่นที่แตกต่างกัน
- NPTL (glibc เท่านั้น WIP)
- LinuxThreads (uClibc เท่านั้น WIP)
- การสนับสนุนทั้ง toolchains นุ่มและยากลอย
- สิ่งอำนวยความสะดวกการแก้ปัญหา
- gdb พื้นเมืองและข้าม gdbserver
- debuging ห้องสมุด: dmalloc ขึ้นมา
- รีสตาร์ทสร้างในขั้นตอนใด ๆ
- การกำหนดค่าตัวอย่างพื้นที่เก็บข้อมูลพร้อมใช้เป็นจุดเริ่มต้นสำหรับการ toolchain ของคุณเอง
มีอะไรใหม่ ในข่าวประชาสัมพันธ์ฉบับนี้.
- การเปลี่ยนแปลงหลายรุ่นตั้งแต่ประกาศผ่านมา
- การสนับสนุนข้ามแคนาดาได้รับการเขียนใหม่ทั้งหมดที่จะไม่จำเป็นต้องมีอยู่ก่อนข้ามคอมไพเลอร์สำหรับเป้าหมายและมีการปรับปรุงมากมายและสิ่งที่ต้องมี.
มีอะไรใหม่ ในรุ่น 1.13.2.
- อาคารห้องสมุด ncurses ได้รับการแก้ไข
- สกัดห้องสมุด cloog ได้รับการแก้ไข.
- 'เพรสคอตต์' CPU ได้รับการยอมรับในขณะนี้เป็น i686.
มีอะไรใหม่ ในรุ่น 1.12.2.
- สตริงรุ่น gdb ได้รับการแก้ไข
- การใช้คำนำหน้าไดเรกทอรี SYSROOT ได้รับการแก้ไข.
มีอะไรใหม่ ในรุ่น 1.12.1:
- แก้ไขข้อผิดพลาด
มีอะไรใหม่ ในรุ่น 1.11.2:
- ห้องสมุด Companion ตอนนี้เลือกอย่างถูกต้องกับ GCC 4.4 6 (ค่าเริ่มต้น).
มีอะไรใหม่ ในรุ่น 1.11.1:
- รุ่นนี้ช่วยแก้ไขข้อผิดพลาดเมื่อปิดกั้นการลอก toolchain .
มีอะไรใหม่ ในรุ่น 1.11.0:
- สถาปัตยกรรม:
- การสนับสนุน SPARC ใหม่
- คอมโพเนนต์ที่ปรับปรุง:
- GCC: ถึง 4.6.0 และรุ่นล่าสุด Linaro 4.4, 4.5 และ 4.6
- ลินุกซ์ได้ถึง 2.6.38.4
- eglibc: 2_13
- gdb: เพิ่มรุ่น Linaro
- librraies สหายบางได้รับการปรับปรุง
- เอกสาร: ใหม่คำอธิบายในเชิงลึกเกี่ยวกับวิธีการสร้าง toolchain
- glibc: LinuxThreads ลบออกรุ่นล่าสุด
- ตัวอย่าง: คนใหม่คู่
มีอะไรใหม่ ในรุ่น 1.10.1.
- ปอกของไบนารีได้รับการแก้ไข
- เสื้อคลุม makeinfo ได้รับการแก้ไข.
- ปลั๊กอิน GCC ถูกสร้างขึ้นไม่ได้สำหรับ toolchains คง.
- LinuxThreads ได้ถูกลบออกในรุ่นล่าสุดของ glibc / eglibc.
- ลิงเกอร์ทองถูกซ่อนอยู่ในขณะนี้สำหรับสถาปัตยกรรมที่มีการสนับสนุนทองไม่มี.
มีอะไรใหม่ ในรุ่น 1.9.3:
- นี้เป็นรุ่นแก้ไขข้อผิดพลาดเท่านั้น
ความคิดเห็นที่ไม่พบ