2012-11-17 2 views
8

나는이 작업을 수행하려고 : 나는 다른 디렉토리에있는 쉘 스크립트에서 메이크업을 (Makefileabc 경로를 사용할 수 있으며, 다른 디렉토리에 존재)를 호출 할다른 디렉토리에있는 Makefile을 호출하는 방법은 무엇입니까?

. 어떻게해야합니까? 쉘 스크립트는 Makefile 디렉토리에 cd에 저를 허용하고 make을 실행하지 않기 때문에

, 어떻게 내가 쉘 명령을 쓸 수 make를 실행합니다 (Makefile 경로를 제공하여 실행되는)?

+2

'쉘 스크립팅으로 make cd 디렉토리에'cd '할 수 없다는 것을 의미합니까? 물론 :'cd/p/a/t/h && make'는 잘 작동합니다. –

+0

안녕하세요, 윌리엄, 답장을 보내 주셔서 감사합니다. 어떤 이유로 쉘 스크립트에서 cd ​​명령을 사용할 수 없었습니다. 그것은 오류를 제공합니다. 이것은 쉘 스크립트에서 사용한 구문입니다. cd Rookie

+0

그렇다면 오류는 무엇입니까? – cdarke

답변

12

GNU make는 특히 -C이 따를 Makefile을주는 -f를 실행하기 전에 디렉토리를 변경하고, 많은 options 받아들입니다.

적절하게 조합하십시오.

Makefile 관련 문제에 대한 디버깅 (특히 -x)을 용이하게하려면 remake을 사용하는 것이 좋습니다. GNU make version 4 이상에서는 make --trace을 사용하십시오 ...

+0

정말 고마워요! 나는이 대안들을 볼 것이다! – Rookie

+0

굉장! 그것은 효과가있다! "make -C '옵션을 사용했습니다. – Rookie

+0

다른 디렉토리에있는 C 프로그램 (make 대신)을 어떻게 호출합니까? 다른 디렉토리에 .o 파일이 있습니다. – Rookie

관련 문제