나는이 오류가 TAB 누락에 관한 알고 중지하지만, 1 행에 누락 탭 어디에 어떻게 든 찾을 수 없습니다 :Makefile.win : 1 : *** 구분 기호가 누락되었습니다.
메이크 :
## -*- mode: make; tab-width: 8; -*-
##
## Simple Makefile
##
## TODO:
## proper configure for non-Debian file locations, [ Done ]
## allow RHOME to be set for non-default R etc
## comment this out if you need a different version of R,
## and set set R_HOME accordingly as an environment variable
R_HOME = $(shell R RHOME)
sources = $(wildcard *.cpp)
programs = $(sources:.cpp=)
## include headers and libraries for R
RCPPFLAGS = $(shell $(R_HOME)/bin/R CMD config --cppflags)
RLDFLAGS = $(shell $(R_HOME)/bin/R CMD config --ldflags)
RBLAS = $(shell $(R_HOME)/bin/R CMD config BLAS_LIBS)
RLAPACK = $(shell $(R_HOME)/bin/R CMD config LAPACK_LIBS)
## if you need to set an rpath to R itself, also uncomment
#RRPATH := -Wl,-rpath,$(R_HOME)/lib
## include headers and libraries for Rcpp interface classes
RCPPINCL = $(shell echo 'Rcpp:::CxxFlags()' | $(R_HOME)/bin/R --vanilla --slave)
RCPPLIBS = $(shell echo 'Rcpp:::LdFlags()' | $(R_HOME)/bin/R --vanilla --slave)
## include headers and libraries for RInside embedding classes
RINSIDEINCL = $(shell echo 'RInside:::CxxFlags()' | $(R_HOME)/bin/R --vanilla --slave)
RINSIDELIBS = $(shell echo 'RInside:::LdFlags()' | $(R_HOME)/bin/R --vanilla --slave)
## compiler etc settings used in default make rules
CXX = $(shell $(R_HOME)/bin/R CMD config CXX)
CPPFLAGS = -Wall $(shell $(R_HOME)/bin/R CMD config CPPFLAGS)
CXXFLAGS = $(RCPPFLAGS) $(RCPPINCL) $(RINSIDEINCL) $(shell $(R_HOME)/bin/R CMD
config CXXFLAGS)
LDLIBS = $(RLDFLAGS) $(RRPATH) $(RBLAS) $(RLAPACK) $(RCPPLIBS) $(RINSIDELIBS)
all: $(programs)
@test -x /usr/bin/strip && strip $^
run: $(programs)
@for p in $(programs); do echo; echo "Running $$p:"; ./$$p; done
clean:
rm -vf $(programs)
rm -vrf *.dSYM
runAll:
for p in $(programs); do echo "Running $$p"; ./$$p; done
나는 당신의 오류를 재현 할 수있는 것보다 더 큰 행 번호와 함께 기대
. 나는이 오류를 줄 수있는 가장 작고 단순한 makefile을 찾을 때까지 예제를 최소화하려고 시도한다. 줄을 제거하고 테스트한다. 사용중인 Make의 버전을 알려주는 것이 유용 할 수도 있습니다 ('make -v'). – Beta이것은 거의 항상 같은 문제입니다. 요리법 (셸 명령) *은 TAB 문자 *로 시작해야합니다. 대신 공백을 사용하는 것 같습니다. – reinierpost
@reinierpost, 오류 메시지가 1 번 줄에 문제가 있음을 나타내지 않습니까? 아니면이 마이크로 소프트의 매력적 기발함입니까? – Beta