>> Edit article
이름
제목
패스워드
make 파일은 그렇게 만드는게 아니어요.. ㅡ ㅡ;; 아래 처럼 할 경우는 차라리 chmod +x Makefile한뒤에 ./Makefile로 실행 시키는경우겠네염. makefile은 make명령어가 실행되기 위해 필요한 환경설정같은겁니다. 간단한 예제를 보여드리지요. all: ping #compiler CC = gcc #install directory INSTDIR = ~/bin INCLUDE = /usr/include # developing option CFLAGS = -g -Wall # output option # CFLAGS = -o -Wall -ansi # chatserver compile option ping : ping.o MySocket.o $(CC) -I$(INCLUDE) $(CFLAGS) -o ping ping.o MySocket.o ping.o: ping.c ping.h $(CC) -I$(INCLUDE) $(CFLAGS) -c ping.c MySocket.o: MySocket.c MySocket.h $(CC) -I$(INCLUDE) $(CFLAGS) -c MySocket.c #cleaning all objective files clean: -rm ping.o MySocket.o install: ping @if [ -d $(INSTDIR) ]; then cp ping $(INSTDIR); chmod a+x $(INSTDIR)/ping; chmod og-2 $(INSTDIR)/ping; echo "Installed in $(INSTDIR)"; else echo "Sorry, $(INSTDIR) does not exist, Install error"; fi : 안녕하세요 : : 제가 make 를 공부할려고 : : [root@jhh project]# ls : Makefile headerfile.h source1.o source2.o source3.o test : : 이렇게 각각의 파일을 만든후 (빈파일) : : [root@jhh project]# cat Makefile : gcc -c source1.c : : gcc -c source2.c : gcc -c source3.c : gcc -o test source1.o source2.o source3.o : 이렇게 make 파일을 만든후 : : #make 했더니.... : : [root@jhh project]# make : Makefile:1: *** commands commence before first target. Stop. : 이런 메시지가 나오네요... : : 내용은 뭐~ 명령은 첫번째 목표물 전에 실행되어야 한다는 것 : 같은 데 통 모르겟습니다. : 답변 주시면 감사하겠습니다.
Copyleft
1999-2026 by
JSBoard Open Project
Theme Designed by
IDOO
All right reserved