Giải thích giúp về các kí tự đặc biệt trong makefile

Mọi người giải thích giúp mình các kí tự %.c %.cpp các biến OBJ OBJDIR patsubst và các kí tự @ kia với ạ.Thanks.

Hi Trọng Dũng.
Không nhầm thì bạn hỏi khá nhiều câu về make file. Bạn nên tìm các tài liệu đọc trước.
http://www.delorie.com/djgpp/doc/ug/larger/makefiles.html

thật ra e có đọc, nhưng đọc k hiểu. kể cả là tiếng việt hay tiếng anh.
%.o %.c kia là e hiểu r, giờ còn phần OBJSDIR / %.o thật sự e k hiểu chỗ / đó để là gì.
và các kí tự @ đứng trước các lệnh shell kia để làm gì nữa ? anh chỉ em với.

Hi Trọng Dũng.

  1. / cách thư mục bình thường thôi.
  2. @ không nhầm là thay cho cái target.
1 Like

có phải chỗ $(OBJDIR /%.o) kia chính là ./build/%.o%.o và %.c thì 2 cái % này là tên Target k có exten nhỉ ?

thế còn phần patsubst là cái j anh ?

Hi Trọng Dũng.

  1. Đúng.
  2. % thay cho tên file. (%.c tất cả các file có phần mở rộng là c)
1 Like

Hi Trọng Dũng.
patsubst bạn đọc ở đây.
https://www.gnu.org/software/make/manual/html_node/Text-Functions.html

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?