다음을 시도하고 있습니다. foo-bin
단일 입력 파일을 받아 두 개의 출력 파일을 생성 하는 프로그램이 있습니다. 이에 대한 멍청한 Makefile 규칙은 다음과 같습니다.
file-a.out file-b.out: input.in
foo-bin input.in file-a.out file-b.out
그러나 이것은 make
두 대상이 동시에 생성된다는 것을 어떤 식으로도 알려주지 않습니다 . make
직렬로 실행할 때는 괜찮지 만 시도 make -j16
하거나 똑같이 미친 짓을 하면 문제가 발생할 수 있습니다 .
문제는 그러한 경우에 적절한 Makefile 규칙을 작성하는 방법이 있는지 여부입니다. 분명히 DAG를 생성하지만 GNU make 매뉴얼은이 경우를 처리하는 방법을 지정하지 않습니다.
동일한 코드를 두 번 실행하고 하나의 결과 만 생성하는 것은 계산에 시간이 걸리기 때문에 문제가되지 않습니다 (생각 : 몇 시간). 데이터 파일의 일부만 처리하는 방법을 모르는 GNUPLOT의 입력으로 자주 사용되기 때문에 하나의 파일 만 출력하는 것도 다소 어려울 수 있습니다.