makefile 에서 compile time
글쓴이: macmac83638 / 작성시간: 화, 2005/11/01 - 11:33오전
안녕하세요
windows 에서 gnumake 를 이용하여 개발을 하고 있는데
현재 컴파일 되는 날짜와 시간을 자동으로 코드에 넣고 싶은데
makefile을 통해야 할 것 같아서..
makefile에서 dos command를 이용하여 날짜와
시간을 얻어와서 그 변수를 c 파일에서 쓰고 싶습니다.
가능한건지요..
Forums:
C 소스에서 __DATE__와 __TIME__의 predefined ma
C 소스에서 __DATE__와 __TIME__의 predefined macro를 쓰면 됩니다.
printf("%s, %s\n", __DATE__, __TIME__);
만약 time.c 파일에 __DATE__, __FILE__을 사용했을때
만약 time.c 파일에 __DATE__, __FILE__을 사용했을때
make를 이용해서 컴파일하게 되면
time.c 파일이 일주일동안 수정사항이 없을때, 계속해서 일주일전의 time.o object 파일로 링크가 걸리지 않나요.
계속 날짜는 일주일 전의 날짜로..
그렇다고 "make clean all"로 build한다는 건 make에 어울리지 않고요..
리눅스에서 쉘스크립트나 make를 사용하다가 윈도우에 왔을 때 어려운 점이 이런점인것 같군요...
배치파일이 리눅스 쉘처럼 좀 더 강력했으면 좋을 것 같습니다.
리눅스 환경에서는CFLAGS += -DDATE=\"`date +'%y
리눅스 환경에서는
CFLAGS += -DDATE=\"`date +'%y/%m/%d'`\"
이런식으로 추가해서 소스코드에
extern char DATE[];
이런 식으로 사용하시면 되는데, 물론 date 포맷은 원하는 형식으로 하시면 되구요...
dos환경이라면, cygwin환경을 말하나요?
답변이 될 지 모르겠지만,....참고하세요....^^
댓글 달기