2014-10-03 1 views
0

메이크 파일을 만들고 있는지 궁금합니다. CFLAGS를 사용하는 대신 CFLAGS_1을 사용하는 것이 유효합니다. 이것은 ifeq와 else를 사용하여 논리를 사용하려고하기 때문입니다. 두 세트의 파일 (예 : A.c와 B.c)을 컴파일해야하지만 B.c는 공유 객체에 의존하므로 CFLAGS를 변경하려고합니다. 그러나, 나는 그것을 작동시키는 데 어려움을 겪고있다.CFLAGS라는 용어는 Makefile에서 어떤 의미가 있습니까?

${PROG}: ${OBJS} 
    ${CC} ${CFLAGS} -o ${PROG} ${OBJS} ${LDFLAGS} 
+0

정확히 무엇을 시도하고 정확히 작동하지 않는 것은 무엇입니까? –

답변

1

사용 CFLAGS_1 괜찮, 그냥 이미 CFLAGS를 사용하는 내장 된 규칙의 작동하지 않습니다.

당신이 실제로 묻는 질문에 대한 대답은 귀하가 묻지 않은 질문이 더 관련성이 있다고 느끼는 동안입니다. 당신이 "대상별"변수라고 할

1

: 값 변수에 따라 어떤 파일 우리가 구축 :

A : CFLAGS := ...

B : CFLAGS := ...

PROG := A B 
${PROG}:... 
    here you can use ${CFLAGS} and it will be the one assigned for the target you are building 
관련 문제