إنشاء ملف Makefile لبرنامج بلغة C

السلام عليكم,

كيف يمكنني إنشاء ملف makefile لبرنامج بالسي؟ علماً أن هذا البرنامج يأخذ input.txt ك argument للدالة main ؟

يرجى الدخول لحسابك أو تسجيل حساب لتستطيع إضافة تعليق
حساب جديد دخول

التعليقات

يوسف سيد أضف ردا

ما علاقة هذا بالـArguments! كان يفترض بك أن تقرأ التوثيق كتابة ملفات MakeFile أمرٌ سهلٌ، ملف بسيط لملف شيفرة واحدة -main.c- لم أجربه:

CC = gcc
CFLAGS = -Wall

all:
    $(CC) $(CFLAGS) main.c -o app

وهذه أكثر تقدمًا تعمل مع كل ملفات C في المجلد لم أجربه أيضًا:

CC = gcc
CFLAGS = -Wall
RM = rm -f

SOURCES = $(wildcard *.c)
OBJECTS = $(patsubst %.c, %.o, $(SOURCES))

# تنفذ مع كل ملف بناء الكائن
.c.o:
    $(CC) $(CFLAGS) -c $<  -o $@

all: $(OBJECTS) exe clean

# بناء البرنامج النهائي
exe: $(OBJECTS)
    $(CC) $(CFLAGS) $(OBJECTS) -o bin.exe

# حذف الملفات المؤقتة
clean:
    $(RM) *.o

كما قال الأخ يوسف، معطيات البرنامج لا علاقة لها بملف makefile. جواب الأخ يوسف وافي لكنني أنصحك باستخدام cmake بدل makefiles لأنها تمكنك من بناء برنامجك على كافة أنظمة التشغيل بينما makefile تختلف في بيئة ويندوز عنها في لينوكس وماك.