สารบัญ:

ไลบรารีสแตติกและไดนามิกบน Linux คืออะไร
ไลบรารีสแตติกและไดนามิกบน Linux คืออะไร

วีดีโอ: ไลบรารีสแตติกและไดนามิกบน Linux คืออะไร

วีดีโอ: ไลบรารีสแตติกและไดนามิกบน Linux คืออะไร
วีดีโอ: Static and Dynamic Linking on Linux with gcc 2024, พฤศจิกายน
Anonim

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

ไลบรารีไดนามิกใน Linux คืออะไร?

ลินุกซ์ รองรับสองคลาสของ ห้องสมุด , กล่าวคือ: คงที่ ห้องสมุด – ถูกผูกไว้กับโปรแกรมแบบคงที่ ณ เวลารวบรวม พลวัต หรือ ห้องสมุดที่ใช้ร่วมกัน – ถูกโหลดเมื่อเปิดโปรแกรมและโหลดเข้าสู่หน่วยความจำ และการรวมเกิดขึ้นในขณะใช้งาน

อาจมีคนถามว่า ไลบรารีสแตติกสามารถพึ่งพาไดนามิกไลบรารี่ได้หรือไม่? ใช่ ตัวอย่างเช่น เมื่อคุณเรียกใช้ฟังก์ชัน windows จากภายในของคุณ คงที่ lib ปกติแล้วมาจากบางคน ห้องสมุดไดนามิก ดังนั้นจึงไม่ควรมีความแตกต่าง

ไลบรารีสแตติกใน Linux คืออะไร ในทำนองเดียวกัน

ไลบรารีแบบคงที่ : NS ห้องสมุดคงที่ หรือเชื่อมโยงแบบคงที่ ห้องสมุด เป็นชุดของรูทีน ฟังก์ชันภายนอกและตัวแปรที่ได้รับการแก้ไขในผู้เรียกในเวลาคอมไพล์และคัดลอกไปยังแอปพลิเคชันเป้าหมายโดยคอมไพเลอร์ ลิงเกอร์ หรือตัวผูก ซึ่งสร้างไฟล์อ็อบเจ็กต์และไฟล์เรียกทำงานแบบสแตนด์อโลน

คุณใช้ไลบรารีแบบคงที่อย่างไร

ขั้นตอนในการสร้าง Static Library ให้เราสร้างและใช้ Static Library ใน UNIX หรือ UNIX เช่น OS

  1. สร้างไฟล์ C ที่มีฟังก์ชันในไลบรารีของคุณ /* ชื่อไฟล์: lib_mylib.c */
  2. สร้างไฟล์ส่วนหัวสำหรับไลบรารี
  3. รวบรวมไฟล์ไลบรารี
  4. สร้างไลบรารีแบบคงที่
  5. ตอนนี้ไลบรารีแบบคงที่ของเราพร้อมใช้งานแล้ว

แนะนำ: