ติดตั้งเครื่องมือคอมไพเลอร์ C, C++ และการพัฒนา (จำเป็นต่อการสร้าง) ใน Debian/Ubuntu
ผู้ดูแลระบบและวิศวกรระบบ Linux ส่วนใหญ่จำเป็นต้องรู้การเขียนโปรแกรมพื้นฐานเพื่อช่วยในการทำงานประจำวัน หากพวกเขาต้องการก้าวไปอีกขั้นในด้านการพัฒนาเช่นกัน (ไม่ว่าจะเป็นเคอร์เนลหรือโปรแกรมเมอร์แอปพลิเคชัน) C หรือ C++ คือจุดเริ่มต้นที่ดีที่สุด
อ่านเพิ่มเติม: ติดตั้ง C, C++ และเครื่องมือการพัฒนาใน RHEL/CentOS/Fedora
ในบทความนี้ เราจะอธิบายวิธีการติดตั้งคอมไพเลอร์ C และ C++ และ เครื่องมือสำหรับการพัฒนา (build-essential ) แพ็คเกจที่เกี่ยวข้อง เช่น make, libc-dev, dpkg-dev ฯลฯ ใน Debian และอนุพันธ์ เช่น Ubuntu และ Linux Mint
ซอฟต์แวร์จำเป็นต่อการสร้างประกอบด้วยรายการข้อมูลของซอฟต์แวร์ซึ่งถือว่ามีความสำคัญสำหรับการสร้างแพ็คเกจ Debian รวมถึงคอมไพเลอร์ gcc ผู้ผลิต และเครื่องมือที่จำเป็นอื่นๆ
คอมไพเลอร์คืออะไร?
พูดง่ายๆ ก็คือ คอมไพเลอร์คือโปรแกรมซอฟต์แวร์ที่ประมวลผลคำสั่งที่เขียนด้วยภาษาการเขียนโปรแกรมและสร้างไฟล์ไบนารีที่ CPU ของเครื่องสามารถเข้าใจและดำเนินการได้
ในการแจกแจงแบบเดเบียน คอมไพเลอร์ C และ C++ ที่เป็นที่รู้จักมากที่สุดคือ gcc และ g++ ตามลำดับ ทั้งสองโปรแกรมได้รับการพัฒนาและยังคงดูแลโดย Free Software Foundation ผ่านทางโครงการ GNU
การติดตั้ง C, C++ Compiler และเครื่องมือการพัฒนา (จำเป็นต่อการสร้าง)
หากระบบของคุณไม่มีแพ็คเกจ build-essential ติดตั้งอยู่ในระบบของคุณตามค่าเริ่มต้น คุณสามารถติดตั้งเวอร์ชันล่าสุดที่มีอยู่ได้จากที่เก็บการแจกจ่ายเริ่มต้นดังนี้:
apt-get update && apt-get install build-essential
OR
sudo apt-get update && sudo apt-get install build-essential
ตอนนี้เราพร้อมที่จะเริ่มพิมพ์โค้ด C หรือ C++… หรือเกือบแล้ว เรากำลังจะแสดงให้คุณเห็นเครื่องมืออีกอย่างหนึ่งที่จะเพิ่มประสิทธิภาพชุดเครื่องมือการพัฒนาของคุณ
เร่งการรวบรวม C และ C++
เมื่อคุณรู้ว่าคุณจะต้องคอมไพล์โปรแกรม ทำการเปลี่ยนแปลง แล้วคอมไพล์ใหม่อีกครั้ง การมีเครื่องมืออย่าง ccache ที่ดีนั้น ซึ่งคุณอาจคาดเดาได้จากชื่อของมันก็คือแคชของคอมไพเลอร์
มันเพิ่มความเร็วในการคอมไพล์ใหม่โดยการแคชการคอมไพล์ก่อนหน้านี้และตรวจจับเมื่อมีการคอมไพล์เดียวกันอีกครั้ง นอกจาก C และ C++ แล้ว ยังรองรับ Objective-C และ Objective-C++ อีกด้วย ข้อจำกัดเพียงอย่างเดียวคือ:
- รองรับการแคชการคอมไพล์ไฟล์ C/C++/Objective-C/Objective-C++ ไฟล์เดียวเท่านั้น สำหรับการคอมไพล์ประเภทอื่นๆ (การคอมไพล์หลายไฟล์ การลิงก์ และอื่นๆ อีกมากมาย) กระบวนการจะจบลงด้วยการรันคอมไพลเลอร์จริง
- แฟล็กคอมไพเลอร์บางตัวอาจไม่รองรับ หากตรวจพบแฟล็กดังกล่าว ccache จะถอยกลับไปรันคอมไพเลอร์จริงโดยไม่แจ้งให้ทราบ
มาติดตั้งเครื่องมือนี้กัน:
aptitude install ccache
ในส่วนถัดไป เราจะดูตัวอย่างบางส่วนของการคอมไพล์โค้ด C และ C++ ที่มีและไม่มี ccache
การทดสอบ C และ C++ ด้วยโปรแกรมตัวอย่าง
ลองใช้ตัวอย่างคลาสสิกของโปรแกรม C พื้นฐานที่บวกเลขสองตัวกัน เปิดโปรแกรมแก้ไขข้อความที่คุณชื่นชอบและป้อนรหัสต่อไปนี้ จากนั้นบันทึกเป็น sum.c
:
#include<stdio.h>
int main()
{
int a, b, c;
printf("Enter two numbers to add, separated by a space: ");
scanf("%d%d",&a,&b);
c = a + b;
printf("The sum of equals %d\n",c);
return 0;
}
หากต้องการคอมไพล์โค้ดข้างต้นให้เป็นผลรวมที่มีชื่อเรียกทำงานได้ในไดเร็กทอรีการทำงานปัจจุบัน ให้ใช้สวิตช์ -o กับ gcc:
gcc sum.c -o sum
หากคุณต้องการใช้ประโยชน์จาก ccache เพียงเติมคำสั่งด้านบนด้วย ccache ดังนี้:
ccache gcc sum.c -o sum
จากนั้นรันไบนารี่:
./sum
แม้ว่าตัวอย่างพื้นฐานนี้จะไม่อนุญาตให้เรามองเห็นศักยภาพทั้งหมดของ ccache แต่สำหรับโปรแกรมขนาดใหญ่ คุณจะรู้ได้อย่างรวดเร็วว่ามันเป็นเครื่องมือที่ยอดเยี่ยมเพียงใด เช่นเดียวกับโปรแกรม C++ เช่นกัน
สรุป
ในคู่มือนี้ เราได้แสดงวิธีการติดตั้งและใช้คอมไพเลอร์ GNU สำหรับ C และ C++ ใน Debian และอนุพันธ์ นอกจากนี้ เรายังอธิบายวิธีใช้แคชของคอมไพเลอร์เพื่อเพิ่มความเร็วในการคอมไพล์โค้ดเดิมซ้ำอีกด้วย แม้ว่าคุณจะสามารถอ้างอิงถึง man page ออนไลน์สำหรับ gcc และ g++ เพื่อดูตัวเลือกและตัวอย่างเพิ่มเติม อย่าลังเลที่จะแจ้งให้เราทราบโดยใช้แบบฟอร์มด้านล่าง หากคุณมีคำถามหรือความคิดเห็นใดๆ