การสร้างและใช้งานไฟล์ Linux “.a”

Kar Srang Laea Chi Ngan Fil Linux A



การทำงานกับไฟล์ในระบบปฏิบัติการ Linux ต้องใช้คำสั่งและเทคนิคต่างๆ ที่ช่วยให้นักพัฒนาสามารถสร้างและรันไฟล์ โค้ด โปรแกรม สคริปต์ และอื่นๆ ได้อย่างมีประสิทธิภาพ ในสภาพแวดล้อม Linux ไฟล์ที่มีนามสกุล “.a” มีความสำคัญอย่างมากในฐานะไลบรารีแบบคงที่ ไลบรารีเหล่านี้มีบทบาทสำคัญในการพัฒนาซอฟต์แวร์ ช่วยให้นักพัฒนาสามารถจัดการและแบ่งปันฟังก์ชันการทำงานทั่วไปกับหลาย ๆ โปรแกรมได้อย่างมีประสิทธิภาพ

การทำความเข้าใจวิธีสร้างและเรียกใช้ไฟล์ “.a” เป็นสิ่งสำคัญสำหรับการพัฒนาซอฟต์แวร์ที่มีประสิทธิภาพในสภาพแวดล้อม Linux นี่เป็นวิธีการที่ครอบคลุมสำหรับการติดตั้งและกำหนดค่าไฟล์ Linux “.a” มาดูกันว่าไฟล์ “.a” ของ Linux คืออะไร สำรวจวัตถุประสงค์ โครงสร้าง และวิธีการสร้างและดำเนินการ

ไฟล์ '.a' ใน Linux คืออะไร?

ไฟล์ Linux “.a” เป็นไฟล์เก็บถาวรที่ทำหน้าที่เป็นคอนเทนเนอร์สำหรับโค้ดและข้อมูลที่คอมไพล์แล้ว เป็นที่รู้จักกันทั่วไปว่าเป็นไลบรารีแบบคงที่ที่มีรหัสที่เชื่อมโยงกับรหัสการโทร ณ เวลาที่รวบรวมซึ่งกลายเป็นส่วนพื้นฐานของแอปพลิเคชัน ไฟล์ Linux “.a” เหล่านี้มีส่วนสนับสนุนพื้นฐานที่คอมไพล์ไว้ล่วงหน้าให้กับแอปพลิเคชัน ซึ่งแตกต่างโดยสิ้นเชิงกับไฟล์ไลบรารีไดนามิก Linux “.so” ซึ่งมีการลิงก์เกิดขึ้นที่รันไทม์







ลองจินตนาการถึงสถานการณ์ที่นักพัฒนาใช้โปรแกรมที่แตกต่างกันสามโปรแกรม เมื่อทราบว่ามีฟังก์ชันการทำงานที่ใช้ร่วมกันระหว่างโปรแกรมเหล่านี้ โปรแกรมเมอร์จึงสร้างไลบรารีที่สรุปคุณลักษณะทั่วไปเหล่านี้ซึ่งแสดงเป็นไฟล์ '.a' ข่าวสำคัญที่ควรทราบ ณ จุดนี้ก็คือไฟล์ Linux “.a” กลายเป็นชุดโค้ดและข้อมูลที่สามารถนำกลับมาใช้ใหม่ได้ ซึ่งนักพัฒนารายอื่นสามารถใช้ในโครงการของตนได้



ข้อกำหนดเบื้องต้น:

ก่อนที่จะเรียนรู้วิธีสร้างและเรียกใช้ไฟล์ “.a” ใน Linux สิ่งสำคัญคือต้องทราบสิ่งพื้นฐานบางประการ มีข้อกำหนดเบื้องต้นบางประการที่ควรแน่ใจก่อนใช้งานฟังก์ชันใน Linux มีดังนี้:



  • Ubuntu 20.04 หรือเวอร์ชันล่าสุด
  • เข้าถึงบรรทัดคำสั่งหรือหน้าต่างเทอร์มินัล
  • บัญชีผู้ใช้ โดยเฉพาะสิทธิ์ sudo สำหรับไฟล์และไดเร็กทอรีต่างๆ

คุณจะสร้างและเรียกใช้ไฟล์ Linux “.a” ได้อย่างไร

การสร้างและการรันไฟล์ Linux “.a” เกี่ยวข้องกับชุดขั้นตอนต่างๆ ได้แก่ การสร้าง การคอมไพล์ และการดำเนินการ คุณสามารถใช้วิธีต่างๆ ในการดำเนินการเหล่านี้ได้ และเราจะสำรวจแต่ละวิธีแยกกัน เราเริ่มต้นกันเลย.





คุณต้องมีคอมไพเลอร์ GCC เพื่อรันและดำเนินการตามตัวอย่างต่อไปนี้ คอมไพเลอร์ใช้เพื่อรันคำสั่งทั้งหมดเพื่อสร้างและรันไฟล์ Linux “.a”:



ต่อไปนี้เป็นขั้นตอนที่อธิบายผ่านคำสั่งและเทคนิคต่างๆ

ขั้นตอนที่ 1: รวบรวมไฟล์ต้นฉบับ C

เริ่มต้นงานด้วยการสร้างไฟล์ต้นฉบับของ C โดยใช้คอมไพเลอร์ GCC เพื่อรวบรวมไฟล์ต้นฉบับ C (.c) ลงในไฟล์อ็อบเจ็กต์ (.o) ด้วยคำสั่งต่อไปนี้:

- จีซีซี -กำแพง -ค - .ค

แฟล็ก '-Wall' เปิดใช้งานคำเตือนทั้งหมด และแฟล็ก '-c' บอกให้ GCC คอมไพล์เท่านั้น ไม่ใช่ลิงก์ ณ จุดนี้

ขั้นตอนที่ 2: สร้างคลังข้อมูลห้องสมุด

ขั้นตอนต่อไปคือการสร้างไฟล์ไลบรารี คำสั่ง “ar” สร้างไฟล์เก็บถาวรไลบรารีแบบคงที่ (.a) จากไฟล์อ็อบเจ็กต์ ดังนั้นเราจึงใช้คำสั่งต่อไปนี้:

- กับ -cvq libfile.a - .โอ

คำสั่งนี้สร้างไฟล์เก็บถาวรแบบคงที่ชื่อ 'libfile.a' โดยรวมไฟล์อ็อบเจ็กต์ต่างๆ ที่มีนามสกุล '.o' โดยใช้คำสั่ง 'ar' (เก็บถาวร) ในระบบปฏิบัติการ Linux คำสั่งนี้มีสามสิ่งที่ควรสังเกต: “c”, “v” และ “q” มาแจกแจงส่วนประกอบต่างๆ และทำความเข้าใจวัตถุประสงค์ของแต่ละแฟล็กและอาร์กิวเมนต์ในบริบทของคำสั่งนี้:

ar: มันดำเนินการคำสั่งเก็บถาวรในระบบ Linux ฟังก์ชันพื้นฐานของคำสั่ง “ar” คือการสร้าง แก้ไข และแยกออกจากไฟล์เก็บถาวร

-c: การตั้งค่าสถานะนี้สั่งให้สร้างไฟล์เก็บถาวรใหม่หากยังไม่ได้สร้างหรือยังไม่มีอยู่ หากมีไฟล์เก็บถาวรตามชื่อที่กำหนด แฟล็ก '-c' จะช่วยให้แน่ใจว่าไฟล์นั้นถูกสร้างขึ้นใหม่ โดยแทนที่เนื้อหาก่อนหน้านี้

-v: ธง verbose จะแสดงข้อมูลโดยละเอียดเกี่ยวกับกระบวนการเก็บถาวร โดยจะให้ข้อเสนอแนะว่าไฟล์ใดบ้างที่ถูกเพิ่มลงในไฟล์เก็บถาวร

-q: “q” ย่อมาจาก “quickly append” โดยจะขอให้แฟล็ก “ar” เพิ่มไฟล์ที่ระบุต่อท้ายไฟล์เก็บถาวรทันที โดยไม่ต้องตรวจสอบสัญลักษณ์ที่ซ้ำกันหรือการดำเนินการที่ใช้เวลานาน

libfile.a: จำเป็นต้องมีชื่อไฟล์สำหรับคำสั่งที่จะสร้างหรือแก้ไข ที่นี่เราตั้งชื่อไฟล์เป็น 'libfile' พร้อมด้วยนามสกุล '.a' ซึ่งระบุว่าเป็นไฟล์เก็บถาวรไลบรารีแบบคงที่

*.o: “*” ที่ท้ายคำสั่งแสดงถึงแต่ละไฟล์ในไดเร็กทอรีที่เลือกโดยมีนามสกุล “.o” ซึ่งหมายถึงไฟล์อ็อบเจ็กต์ ไฟล์อ็อบเจ็กต์เป็นผลลัพธ์ของการคอมไพล์ซอร์สโค้ดและมีโค้ดเครื่องที่ยังไม่ได้เชื่อมโยงกับไฟล์ปฏิบัติการขั้นสุดท้ายใดๆ

ขั้นตอนที่ 3: การดูเนื้อหาห้องสมุด

ตอนนี้เราสร้างไฟล์เก็บถาวรไลบรารีแล้ว เราจะเห็นมันได้โดยใช้คำสั่ง “ar –t” คำสั่ง “ar –t” แสดงรายการเนื้อหาทั้งหมดที่มีอยู่ในไลบรารี

- กับ -t libfile.a

คำสั่ง “ar -t libfile.a” แสดงรายการไฟล์อ็อบเจ็กต์ทั้งหมดที่มีอยู่ในไฟล์เก็บถาวรไลบรารีแบบคงที่ชื่อ “libfile.a” โดยใช้คำสั่ง “ar” ในระบบปฏิบัติการ Linux มาวิเคราะห์แต่ละแฟล็กและฟังก์ชันการทำงาน:

ar: ตามที่กล่าวไว้ก่อนหน้านี้ นี่คือคำสั่งเก็บถาวรในระบบ Linux

-t: ธง “-t” ใช้เพื่อแสดงสารบัญของไฟล์เก็บถาวร โดยแสดงชื่อของไฟล์อ็อบเจ็กต์ที่จัดเก็บไว้ใน “libfile.a”

libfile.a: หากต้องการอ่านข้อมูล เราจำเป็นต้องทราบชื่อของไฟล์เก็บถาวร

ขั้นตอนที่ 4: การใช้ไลบรารีในโปรแกรมอื่น

ตอนนี้เรามาดูวิธีใช้ไฟล์ Linux “.a” ที่พัฒนาขึ้นใหม่ในโปรแกรมอื่นกัน เนื่องจากเราสร้างไลบรารี่ขึ้นมา ตอนนี้จึงสามารถใช้งานได้ทุกที่และทุกโปรแกรมโดยเพียงแค่เพิ่มไลบรารีลงในคำสั่งคอมไพล์ เราสามารถทำได้สำเร็จด้วยความช่วยเหลือของคำสั่งที่ตามมา ประกอบด้วยส่วนหัวและลิงก์ที่จำเป็นทั้งหมดของห้องสมุด

- จีซีซี -โอ MyProgramMain.c -ล เส้นทาง - ถึง - lib คือ -lfile

ในคำสั่งนี้ “-L” ระบุเส้นทางไลบรารี ลิงก์ “-lfile” กับ libfile “library.a” โดยลบคำนำหน้า “lib” และส่วนต่อท้าย “.a” ออก

ขั้นตอนที่ 5: เรียกใช้ไฟล์ Linux “.a”

ในที่สุด เราก็สามารถเรียกใช้ไฟล์ “.a” ได้ ผลลัพธ์จะแสดงให้คุณเห็นทันทีเมื่อรันสคริปต์ต่อไปนี้ในเทอร์มินัลของคุณ:

- - - MyProgramMain

คำสั่งนี้เรียกใช้งานไฟล์ โดยใช้ฟังก์ชันการทำงานที่มีให้ทั้งในไฟล์ต้นฉบับและไลบรารีสแตติกที่เชื่อมโยง

บทสรุป

การสร้างและเรียกใช้ไฟล์ “.a” ใน Linux จำเป็นต้องรวบรวมคำสั่งต่างๆ ที่ใช้ในการสร้างไฟล์ คอมไพล์ และลิงก์ การทำความเข้าใจขั้นตอนเหล่านี้และฟังก์ชันการทำงานของแต่ละคำสั่งช่วยให้นักพัฒนาสามารถจัดระเบียบโค้ด ใช้ไลบรารีภายนอก และพัฒนาโปรแกรมที่ปรับขนาดได้ ไม่ว่าคุณจะจำเป็นต้องใช้คำสั่งพื้นฐานเช่น nano และ GCC หรือคุณกำลังจะใช้เทคนิคขั้นสูงเพิ่มเติมกับไลบรารีแบบคงที่ การฝึกฝนทักษะเหล่านี้จะช่วยในการพัฒนาบน Linux ที่ใช้งานได้จริง