Tôi muốn tạo tệp phụ thuộc duy nhất bao gồm tất cả các phụ thuộc của tệp nguồn sử dụng cờ gcc -M thông qua Makefile. Tôi googled cho giải pháp này nhưng, tất cả các giải pháp được đề cập là để tạo ra nhiều tập tin deps cho nhiều đối tượng.Tạo tất cả các phụ thuộc của dự án trong một tệp đơn bằng cờ gcc -MM
DEPS = make.dep
$(OBJS): $(SOURCES)
@$(CC) -MM $(SOURCEs) > $(DEPS)
@mv -f $(DEPS) $(DEPS).tmp
@sed -e 's|[email protected]:|[email protected]:|' < $(DEPS).tmp > $(DEPS)
@sed -e 's/.*://' -e 's/\\$$//' < $(DEPS).tmp | fmt -1 | \
sed -e 's/^ *//' -e 's/$$/:/' >> $(DEPS)
@rm -f $(DEPS).tmp
Nhưng nó không hoạt động bình thường. Hãy cho tôi biết tôi đang phạm sai lầm ở đâu.
Cảm ơn bạn rất nhiều. Tôi nghĩ rằng đây có thể là makefile cuối cùng mới của tôi cho bất kỳ dự án nào. – digy
@digy Vui vì tôi có thể trợ giúp :-) –