ตั้งแต่คำถามที่เหลือของคุณได้รับคำตอบโดย goldilocks ฉันจะชั่งน้ำหนักในส่วนแรกวิธีการสร้างสิ่งต่าง ๆ จากแหล่งที่มา
รุ่นสั้นจริงๆคือเมื่อคุณดาวน์โหลดไฟล์ต้นฉบับจากอินเทอร์เน็ตพวกเขามักจะมี readme ที่เชื่อมโยงกับไฟล์เหล่านั้นซึ่งควรจะบอกคุณอย่างชัดเจนว่าจะให้โปรแกรมทำงานและทำงานอย่างไร
แต่การบอกให้คุณอ่าน readme นั้นไม่ได้ตอบคำถามจริงๆดังนั้นโดยพื้นฐานแล้วคุณสามารถเขียนโปรแกรมพื้นฐานที่เป็น
#include <stdio.h>
int main( ) {
printf("Hello World!");
}
และพิมพ์gcc helloWorld.c
และgcc
จะสร้างไบนารีนั้นและส่งออกโปรแกรมที่เขียนว่า "Hello World!" ไปที่คอนโซลเมื่อเรียกใช้
ตกลงดังนั้นตอนนี้คุณได้สร้างโปรแกรมแล้ว แต่มันจะไม่น่าแปลกใจไหมที่จะต้องพิมพ์ไฟล์ต้นฉบับทุกไฟล์ที่คุณต้องการรวบรวมทุกครั้งที่คุณต้องการคอมไพล์บางสิ่ง? นั่นคือสิ่งที่makefiles
มีไว้เพื่อ หากคุณทำงานในโปรแกรมที่มีพวงของไฟล์ที่มาก็มักจะมาพร้อมกับ Makefile หรือบางไฟล์สร้างระบบอัตโนมัติอื่น ๆ ( ant
, Cmake
หรือautoconf
หรือบางอย่าง)
ในการสร้างโปรแกรมประเภทนี้เพียงแค่เรียกใช้make <build target>
ภายในไดเรกทอรี makefile สำหรับโปรแกรม Hello World ของฉันอาจรวมถึงเป้าหมายที่เรียกว่าhelloworld
คอมไพล์ helloWorld.c ฉันจะเรียกใช้โดยmake helloworld
และมันจะออกไบนารี
หมายเหตุว่าการสร้างสิ่งที่มาจากแหล่งที่สามารถใช้เวลานานมากและจำนวนมากของหน่วยความจำ ( ทีมงานโครเมี่ยมแม้แนะนำฮาร์ดไดรฟ์ที่สองที่จะสร้างแหล่งที่มาของพวกเขา! ) โปรดทราบว่าเมื่อคุณสร้างสิ่งต่าง ๆ จากแหล่งที่มาคุณจะต้องจัดการกับการพึ่งพามากกว่าที่ตัวจัดการแพคเกจจะทำเพื่อคุณ