나는 동시에 컴파일해야하는 세 개의 프로그램을 가지고 있는데, 두 개는 C로 작성되었고 두 개는 java로 작성되었다. 나는 C가있을 때 Makefile을 사용하여 세 가지 작업을 모두 마쳤지 만 그 중 하나를 java로 다시 작성했습니다 ... 같은 makefile을 사용하여 한 번에 3을 모두 컴파일 할 수있는 방법이 있습니까?동시에 C와 Java 프로그램을 모두 컴파일하는 Makefile
CC=gcc
JC=javac
JFLAGS= -g
CFLAGS= -Wall -g -std=c99
LDFLAGS= -lm
.SUFFIXES: .java .class
.java.class:
$(JC) $(JFLAGS) $*.java
CLASSES = kasiski.java kentry.java
ALL= ic ftable kasiski
all: $(ALL)
ic: ic.o
kasiski: $(CLASSES:.java=.class)
ftable: ftable.o
ic.o: ic.c ic.h
ftable.o: ftable.c ftable.h
.PHONY: clean
clean:
rm -rf core* *.class *.o *.gch $(ALL)
"CC"줄을 제거하면 문제가 해결되었지만 (프로젝트의 이전 C 시도에서 나온) "kasiski.c"및 "kasiski.h"파일에서 많은 잡음과 오류가 발생했습니다 make (나는 아직도 이유를 이해할 수 없다). 이 소스 파일을 삭제 한 후에는 모든 것을 컴파일하고 방해하지 않았습니다. 감사! –
@ Michael : https://sites.google.com/site/michaelsafyan/coding/resources/how-to-write-a-makefile 페이지를 찾을 수 없습니다. 새로운 링크를 제공합니다 –
죄송합니다, 그것은 얼마 전 https://sites.google.com/site/michaelsafyan/software-engineering/how-to-write-a-makefile로 옮겼으며, 나는 이와 같은 죽은 링크가 있다는 것을 깨닫지 못했습니다. 업데이트 됨. –