나는 다음과 같은 Makefile을 작성했습니다 중지 : 그것은 오류가 발생메이크 파일을 디버깅 할 수 없습니다. Makefile : 9 : *** 구분 기호가 누락되었습니다.
CC='/buildtools/toolchain/wr-x86/3.0FCScg/bin/i586-wrs-linux-gnu-gcc --sysroot=/buildtools/toolchain/wr-x86/3.0FCScg/sysroot'
IDIR =../../../include
CFLAGS=-I$(IDIR)
LDIR =../../../../../../../../.debug/lib.out/public/
LIBS= -lmylib1 -lmylib2 -lmylib3
myexec: my_code.c
$(CC) $(CFLAGS) -o myexec my_code.c
: 나는 관련 질문 here 보았다
Makefile:9: *** missing separator. Stop
. 탭에 문제가있을 수 있다고합니다. 나는 코드를 두 번 확인했다. 나는 공백이 아닌 탭을 사용하고 있습니다. 내가
cat -e -t -v Makefile
을 실행할 때 나는 $CC
전에 탭이없는 의미 다음을 얻는다.
CC='/buildtools/toolchain/wr-x86/3.0FCScg/bin/i586-wrs-linux-gnu-gcc --sysroot=/buildtools/toolchain/wr-x86/3.0FCScg/sysroot'$
IDIR =../../../include$
CFLAGS=-I$(IDIR)$
$
LDIR =../../../../../../../../.debug/lib.out/public/$
LIBS= -lmylib1 -lmylib2 -lmylib3$
$
myexec: my_code.c$
$(CC) $(CFLAGS) -o myexec my_code.c$
또한 .vimrc 파일을 확인했습니다. 나는 set tabstop=4
입니다. 나는 이것을 제거하려고 노력했으나 오히려 상황을 더욱 악화시켰다. 그것은 나에게 오류를주고 시작 : Makefile:9: *** missing separator (did you mean TAB instead of 8 spaces?). Stop.
이는 모습입니다 :
syntax on
colorscheme desert
set nocompatible
set number
set backspace=indent,eol,start
set autoindent
set ruler
set spell
set title
set et
set mouse=v
set history=100
set tabstop=4
'et'옵션이 범인입니다. 'expandtab'의 약자로, 여러분이 원하지 않는 것입니다. '.vimrc' 파일에서 제거하십시오. 그런 다음 makefile에'$ (CC)'줄을 다시 입력하십시오. –
@CraigEstey : 이것은 vim 구성을 변경할 의향이 있기 때문에 Asker에게는 의미가 있습니다. 많은 사용자들에게 대부분 vim 설정이 원하는 기본 동작이지만 때때로 비정상적인 파일에 대해서는 예외가 필요합니다. – jxh
'filetype plugin indent on' 행을 추가하면 Vim이 파일 유형별 설정을로드하게되어 사용자가 원하는 일반적인 설정을 무시할 수 있습니다. – romainl