Czasami chcę spróbować skompilować zmiany w kodzie, ale nie wdrażać tych zmian. Na przykład, jeśli włamuję się do podstawy kodu A w Asterisk i chcę się upewnić, że zmiany, które wprowadzam, nadal się kompilują, zapiszę i uruchom make. Jednak nie chcę wdrażać tych zmian, ponieważ nie skończyłem kodowania.
Dla mnie uruchamianie make jest po prostu sposobem upewnienia się, że nie mam zbyt wielu błędów kompilacji w moim kodzie, do których mam problemy z ich lokalizacją. Być może bardziej doświadczeni programiści C nie mają tego problemu, ale dla mnie ograniczenie liczby zmian między kompilacjami pomaga zmniejszyć liczbę możliwych zmian, które mogły całkowicie zniszczyć moją kompilację, a to ułatwia debugowanie.
Wreszcie pomaga mi to w zatrzymaniu. Jeśli chcę pójść na lunch, wiem, że ktoś może ponownie uruchomić aplikację w jej aktualnym stanie roboczym, bez konieczności szukania mnie, ponieważ tylko instalacja make spowoduje skopiowanie plików binarnych do rzeczywistego folderu aplikacji.
Być może istnieją inne powody, ale to jest powód, dla którego akceptuję fakt, że te dwa polecenia są rozdzielone. Jak powiedzieli inni, jeśli chcesz je połączyć, możesz połączyć je za pomocą powłoki.
Tylko jedna uwaga: "make" bez żadnych komentarzy pominie wszelkie obiekty wieloznaczne. "%" jest równoważne regexowi "+" dla nazw docelowych. Dawny. jeśli masz 3 cele: 1) "% _targetsuffix:" 2) "wildTarget:" 3) "defaultTarget:" w tej kolejności przechodząc od góry do dołu. Polecenie "make" pominie "% _youtargetsuffic:" i zbuduje "wildTarget:" ("defaultTarget:" zostanie zignorowane, ponieważ "wildTarget:" jest przed nim). Niestety nie wiem, jak sformatować komentarze, aby były bardziej czytelne. – funa68