338 make -C /path/to/dir — 범인 소스 8 Grump-표준이 아닙니다. GNU 확장이어야합니다. Linux와 Unix를 말하고 있기 때문에 원하는 것이 확실하지 않지만 -C 옵션은 Solaris 10 (/ usr / ccs / bin / make), AIX (/ usr / bin / make) 또는 HP-UX 11.23 (/ usr / bin / make). 여전히 4 개 중 1 개는 그렇게 나쁘지 않습니다. — Jonathan Leffler 6 그것은 BSD make에서도 작동하므로 GNU 확장뿐만 아니라. — Chris Dodd 4 'C'가 대문자인지 확인하십시오. — m.r226
101 다른 답변에서 언급했듯이 make (1)에는이 -C 옵션이 있습니다. 여러 명령에는 비슷한 옵션이 있습니다 (예 : tar). 이러한 옵션이없는 다른 명령의 경우 다음을 사용할 수 있습니다. (cd /dir/path && command-to-run) 이것은 하위 쉘에서 명령을 실행합니다. 하위 쉘은 먼저 작업 디렉토리가 변경되고 (부모 쉘의 작업 디렉토리는 그대로 둡니다). 디렉토리를 변경할 수없는 오류 사례를 포착 && 하는 대신에 여기 가 사용됩니다 ;. — 데이브 C 소스
22 디렉토리에 CD를 저장하지 않으려는 이유가 이후 작업을 위해 현재 디렉토리에 있어야하기 때문에 pushd 및 popd를 사용할 수 있습니다. pushd ProjectDir ; make ; popd ProjectDir로 이동하여 make를 실행 한 다음 현재 위치로 돌아갑니다. — 수수께끼 소스
-3 makefile : all: gcc -Wall -Wpedantic -std=gnu99 -g src/test.c -o build/test run: ./build/test 또는 run: ./../build/test 기타 — Oldpilsbury 소스 1 대답은 질문을 완전히 놓쳤습니다 .makefile을 작성하는 방법이 아니라 make를 호출하는 방법에 관한 것입니다. — Petr