ประกาศไฟล์ปฏิบัติการและไลบรารี
เพิ่มผลลัพธ์ลงในกราฟการสร้าง
ประกาศไฟล์ปฏิบัติการและไลบรารี เป็นบทเรียน Zig Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Zig Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Zig Academy มีบทเรียนทั้งหมด 4 บทเรียน
อาร์ติแฟกต์ที่จะสร้าง
สิ่งที่คุณคอมไพล์เรียกว่า อาร์ติแฟกต์: อาจเป็นไฟล์ปฏิบัติการที่คุณเรียกใช้ หรือไลบรารีที่โค้ดอื่นเชื่อมโยงด้วย คุณประกาศสิ่งเหล่านี้ใน build.zig 📦
เพิ่มไฟล์ปฏิบัติการ
สร้างโปรแกรมที่เรียกใช้ได้ด้วย addExecutable โดยระบุชื่อและไฟล์ต้นฉบับรากที่มี main
const exe = b.addExecutable(.{
.name = "app",
});ชี้ไปยังโมดูลราก
อาร์ติแฟกต์ต้องมี root_module ที่สร้างจากไฟล์หลัก รวมถึงค่า target และ optimize ที่คุณเลือกไว้ก่อนหน้า
.root_module = b.createModule(.{
.root_source_file = b.path("src/main.zig"),
}),ส่งต่อ Target และ Optimize
โมดูลนั้นยังรับฟิลด์ target และ optimize ด้วย ดังนั้นไฟล์ปฏิบัติการจะทำตามสิ่งที่บรรทัดคำสั่งร้องขอ
.target = target,
.optimize = optimize,ติดตั้งผลลัพธ์
การสร้าง exe เพียงอย่างเดียวยังไม่พอ ให้บอก Zig ให้วางไฟล์ไว้ใน zig-out ด้วย installArtifact เพื่อให้การสร้างเริ่มต้นสร้างไฟล์นั้นออกมา
b.installArtifact(exe);ผลลัพธ์จะอยู่ที่ใด
โดยทั่วไปไบนารีที่ติดตั้งแล้วจะปรากฏใต้ zig-out/bin เรียกใช้ zig build แล้วไปดูโปรแกรมที่เพิ่งคอมไพล์ได้ที่นั่น
zig-out/bin/appเพิ่มไลบรารี
สำหรับโค้ดที่นำกลับมาใช้ใหม่ ให้ใช้ addLibrary แทน ซึ่งจะสร้างอาร์ติแฟกต์ไลบรารีที่ผู้อื่นนำเข้าและเชื่อมโยงได้
const lib = b.addLibrary(.{
.name = "mathz",
});แบบคงที่หรือแบบไดนามิก
ไลบรารีอาจเป็นแบบ คงที่ (ฝังไว้ในผู้เรียก) หรือแบบไดนามิก (ไฟล์ที่ใช้ร่วมกัน) คุณกำหนดรูปแบบการเชื่อมโยงเมื่อตอนประกาศไลบรารี
.linkage = .static,เชื่อมโยงไลบรารีเข้ากับ Exe
เชื่อมโยงทั้งสองเข้าด้วยกันเพื่อให้ exe เรียกใช้โค้ดของไลบรารีได้ โดยใช้ linkLibrary เพื่อเพิ่มขอบเขตการพึ่งพา
exe.linkLibrary(lib);ต้องใช้ libc หรือไม่
หากโค้ดของคุณเรียกใช้ฟังก์ชันมาตรฐานของ C ให้ร้องขอ libc บนอาร์ติแฟกต์ด้วย linkLibC เพื่อให้เชื่อมโยงไลบรารีระบบที่ถูกต้อง
exe.linkLibC();กราฟของอาร์ติแฟกต์
อาร์ติแฟกต์แต่ละรายการคือโหนด ส่วนการเชื่อมโยงจะเพิ่ม เส้นเชื่อม ทั้งหมดรวมกันเป็นกราฟการสร้างที่ Zig เดินตามเมื่อคุณเรียกใช้การสร้าง ✅
ตรวจสอบอย่างรวดเร็ว
ทบทวนว่าการเรียกใช้ใดเป็นตัวที่ส่งไบนารีที่สร้างเสร็จแล้วไปไว้ใน zig-out
สรุปทบทวน
คุณประกาศอาร์ติแฟกต์ด้วย addExecutable และ addLibrary กำหนดโมดูลหลักและเป้าหมายให้กับอาร์ติแฟกต์ จากนั้นใช้ installArtifact และ linkLibrary เพื่อเชื่อมทุกอย่างเข้าด้วยกัน 🎯
เรียนรู้ Zig ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 30
- บทเรียน
- 120
คำถามที่พบบ่อย
บทเรียน “ประกาศไฟล์ปฏิบัติการและไลบรารี” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “ประกาศไฟล์ปฏิบัติการและไลบรารี” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Zig Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Zig Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “ประกาศไฟล์ปฏิบัติการและไลบรารี”
เพิ่มผลลัพธ์ลงในกราฟการสร้าง คุณปฏิบัติ Zig Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Zig Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Zig Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน
บทเรียน “ประกาศไฟล์ปฏิบัติการและไลบรารี” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Zig Academy นี้ได้ไหม
ได้ บทเรียน Zig Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- ส่วนประกอบของไฟล์ build.zig
- ประกาศไฟล์ปฏิบัติการและไลบรารี
- ขั้นตอนการสร้างและ zig build run
- ตัวเลือกและแฟล็กของการสร้าง