Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Membuat Makefile C Mudah?

Bagaimana untuk Membuat Makefile C Mudah?

DDD
DDDasal
2024-12-04 16:17:15628semak imbas

How to Create a Simple C   Makefile?

Cara Membuat Makefile C SIMPLE

Panduan ini akan membimbing anda melalui proses mencipta Makefile ringkas untuk projek C. Kami akan meliputi tugas asas seperti menyusun fail sumber, memautkan objek dan mencipta boleh laku.

Memahami Makefiles

Makefile ialah fail teks yang menentukan kebergantungan antara fail dalam projek anda dan arahan untuk membina fail tersebut. Gunakan kebergantungan ini untuk menentukan fail mana yang perlu dibina semula apabila fail sumber berubah.

Pembolehubah Buat Biasa

Berikut ialah beberapa pembolehubah Buat biasa yang mungkin anda rasa berguna:

  • CC: Pengkompil C
  • CXX: C pengkompil
  • LD: Pemaut
  • CFLAGS: Bendera pengkompil C
  • CXXFLAGS: Bendera pengkompil C
  • LDFLAGS: Bendera pengkompil
  • LDLIBS : Perpustakaan ke pautan

Asas Makefile

Mari kita mulakan dengan Makefile yang mudah:

CC = gcc
CXX = g++
LD = g++
CFLAGS = -g
CXXFLAGS = -g
LDFLAGS = -g
LDLIBS =

SRCS = main.cpp support.cpp
OBJS = $(SRCS:.cpp=.o)

all: main
main: $(OBJS)
    $(LD) $(LDFLAGS) $(OBJS) $(LDLIBS) -o main

clean:
    rm -f $(OBJS)

Makefile ini mentakrifkan perkara berikut:

  • The Penyusun C dan C untuk digunakan
  • Kompilasi dan pemautan flags
  • Fail sumber dan fail objek
  • Boleh laku akhir

Semua sasaran ialah sasaran lalai, yang akan dibina apabila anda menjalankan make. Sasaran utama bergantung pada fail objek, yang seterusnya bergantung pada fail sumber. Sasaran bersih akan mengalih keluar fail objek.

Menggunakan Make

Untuk menggunakan Makefile ini, hanya taip arahan berikut dalam terminal:

make

Make akan membaca Buat fail dan bina projek. Anda juga boleh menentukan sasaran tertentu dengan menaip:

make <target>

Sebagai contoh, untuk membina fail objek sahaja, anda akan menaip:

make OBJS

Atas ialah kandungan terperinci Bagaimana untuk Membuat Makefile C Mudah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn