2013-02-06 61 views
3

我試圖運行下面的Makefile化妝:找不到makedepend

CMDLINE_SRC=$(wildcard commandLine/*.c) 
CMDLINE_OBJS = $(CMDLINE_SRC:.c=.o) 
EXECUTABLES = $(CMDLINE_SRC:.c=) 

LIB_SRC=$(wildcard c/*.c) 
LIB_OBJ = $(LIB_SRC:.c=.o) 
LIB_OUT = lib/libclinrisk.a 

INCLUDES = -I include 

# compiler 
CC = gcc 
CCFLAGS = 
LDFLAGS = 

# library paths 
LIBS = -Llib -lclinrisk -lm 

.SUFFIXES: .c 

default: dep executables 

executables: $(EXECUTABLES) 
    cp $(EXECUTABLES) executables 

$(EXECUTABLES): $(LIB_OUT) 

.c: 
    $(CC) $(INCLUDES) $(LDFLAGS) $< -o [email protected] $(LIBS) 

.c.o: 
    $(CC) $(INCLUDES) $(CCFLAGS) -c $< -o [email protected] 

$(LIB_OUT): $(LIB_OBJ) 
    ar rcs $(LIB_OUT) $(LIB_OBJ) 

depend: dep 

dep: 
    makedepend -- $(CFLAGS) -- -I /usr/include/linux $(INCLUDES) $(LIB_SRC) 

clean: 
    rm -f $(LIB_OBJ) $(LIB_OUT) Makefile.bak 
    rm -f $(CMDLINE_OBJ) $(CMDLINE_PROGS) 
    rm -f executables/* 

# DO NOT DELETE 

,並得到以下錯誤消息:

$ make 
makedepend -- -- -M 
make: makedepend: Command not found 
make: *** [dep] Error 127 

據我瞭解,我可能沒有makedepend安裝,如果我按鍵入後使我得到:

$ make <TAB> 
clean  default  dep   depend  executables makefile 

如果是這樣,我沒有makedepend安裝,怎麼做我安裝它並指向

makedepend -- $(CFLAGS) -- -I /usr/include/linux $(INCLUDES) $(LIB_SRC) 

需要指出什麼?

謝謝!

UPDATE:Davides答案已經解決了這個問題...

但是我現在堅持:

$ make 
makedepend -- -- -I /usr/include/linux -I include 
cp executables 
cp: missing destination file operand after `executables' 
Try `cp --help' for more information. 
make: *** [executables] Error 1 

我懷疑這是一個與實際makefile的一個問題....

+0

什麼是你的操作系統?您的問題「我如何安裝[makedepend]」取決於此。 – congusbongus

+0

請勿編輯問題以添加新問題。相反,按下屏幕頂部的「提問」按鈕。 –

回答

3

您錯過了makedepend工具。

通過編譯源跟隨這說明安裝它(所以你的發行版無關):

Download and install makedepend

+0

謝謝,解決了這個問題,但是我遇到了一個新問題,已經編輯到我的問題中。 – brucezepplin

+4

對於Ubuntu,軟件包名稱是xutils-dev – shantanu