นี่คือคอมไพเลอร์ C2 ที่เขียนด้วย C2 เอง
C2 เป็นวิวัฒนาการของ C โปรดดู http://c2lang.org สำหรับข้อมูลเพิ่มเติม
เวอร์ชันแรกเขียนด้วยภาษา C++ และสามารถพบได้ในประวัติของไฟล์เก็บถาวรนี้ด้วย
ดูเอกสารการติดตั้งสำหรับการติดตั้งบน Linux หรือ OSX
c2c ต้องการอินเทอร์เฟซ libc ดังนั้นโปรดโคลนไฟล์เก็บถาวร c2_libs ใน dir ฐานเดียวกันกับไฟล์เก็บถาวรนี้:
git clone [email protected]:c2lang/c2_libs.git
เพื่อให้ไดเร็กทอรีมีลักษณะดังนี้: base/ c2_libs/ c2compiler/
อีกด้วย
เนื่องจาก c2c เขียนด้วยภาษา C2 จึงจำเป็นต้องมีบูตสแตรป กรุณาวิ่ง
. ./env.sh
make -C bootstrap
./install_plugins.sh
สิ่งนี้จะสร้างเวอร์ชัน boostrap c2c และใช้เพื่อสร้างคอมไพเลอร์ c2c ผลลัพธ์จะอยู่ในโฟลเดอร์เอาต์พุต/
ตอนนี้คุณสามารถรันคอมไพเลอร์ทั่วไปกับโปรเจ็กต์ C2 ของคอมไพเลอร์ (อื่นๆ) ได้แล้ว
./output/c2c/c2c
วิธีที่ดีกว่าคือการสร้าง symlink ใน ~/bin:
cd ~ /bin
ln -s < path_to_c2compiler > /output/c2c/c2c c2c
ตรวจสอบให้แน่ใจด้วย ~/bin อยู่ในตัวแปร PATH ของคุณ
คอมไพเลอร์ C2 มีระบบ ปลั๊กอิน ที่อนุญาตให้โหลดปลั๊กอินในระหว่างการคอมไพล์และแก้ไข AST ได้
c2c จะค้นหาปลั๊กอินในตัวแปรสภาพแวดล้อม $C2_PLUGINDIR (กำหนดโดยสคริปต์ env.sh) นอกจากนี้ยังสามารถตั้งค่าเส้นทางใน ไฟล์ build-file หากต้องการติดตั้งปลั๊กอินตั้งแต่แรก ให้รัน . /install_plugins.sh สิ่งนี้จะสร้าง ~/c2_plugins/ และคัดลอกปลั๊กอินทั้งหมดที่นั่น
หากต้องการรัน c2c โดยไม่ต้องใช้ปลั๊กอิน ให้ใช้ --noplugins
หากต้องการรันการทดสอบหน่วยให้รัน
./output/tester/tester test