mt valgrind 명령에서 에코가 작동하지 않는 이유는 무엇입니까?

mt valgrind 명령에서 에코가 작동하지 않는 이유는 무엇입니까?

따라서 내 makefile은 valgrind.out 파일을 생성하지 않는다는 점을 제외하고는 잘 작동하는데 그 이유는 모르겠습니다. 따라서 콘솔은 실행 파일이 생성되었다는 줄을 성공적으로 인쇄하지만 valgrind.out은 인쇄하지 않습니다.

여기에 이미지 설명을 입력하세요.

답변1

대상을 지정해야 합니다.

make valgrind

왜냐하면 그것은 그것의 일부가 아니기 때문입니다 all.

기타 참고사항

Makefile에서는 아마도 디렉토리를 지정해야 할 것 ./line입니다 line.월그린드표적.

지적한대로@kathy일관성을 위해 $(EXEC).

또한 후자가 허용될 가능성이 더 높으므로 다음 >&으로 대체해야 할 수도 있습니다.>file 2>&1무슨 껍질, (아마 sh), 당신이 활용하세요.

그래서 다음과 같습니다.

valgrind:
    valgrind --leak-check=yes ./$(EXEC) >valgrind.out 2>&1
    @echo 'valgrind.out has been created'

관련 정보