-M
및 -MM
인 추적 종속성에 대한 기본적으로 두 가지 옵션이 있습니다. 차이점은 -MM
은 시스템 헤더와 헤더가 포함되지 않는다는 것입니다.GCC 종속성 추적 : -MM이 -MM보다 낫습니까?
제 질문 : 왜 -M
을 사용하고 싶습니까? 생성 된 .d
파일을 크게 팽창시킵니다. 시스템 헤더에는 대개 다른 시스템 헤더의 큰 팩이 포함되어 있기 때문입니다. 또한 시스템 헤더는 make
으로 작성할 수 없으므로 종속성으로 사용하면 이점이 없습니다. 내가 볼 수있는 유일한 작은 이점은 - 필요한 시스템 헤더가 누락 된 경우 make
이 누락 된 헤더를보고하는 대신 gcc
을보고한다는 것입니다. 그러나 이것의 이득은 무엇입니까?
일을 정리하면 -M
이 전혀 유용하지 않을 이유가 없습니다. 내가 놓친 게 있니? 어떤 시나리오에서 을 -MM
이상으로 사용해야하는 시나리오가 있습니다.