Chinaunix

标题: makefile error [打印本页]

作者: liyuanyuansky8    时间: 2011-08-26 15:51
标题: makefile error
这是下载的程序中带的,然后我在linux中进make操作,就会出现下面的问题
Makefile文件为
###
###     Makefile for H.26L encoder
###
###             generated for UNIX/LINUX environments
###             by H. Schwarz
###



NAME=   lencod

### include debug information: 1=yes, 0=no
#DBG= 0

DEPEND= dependencies

BINDIR= ../bin
INCDIR= inc
SRCDIR= src
OBJDIR= obj

ADDSRCDIR= ../lcommon/src
ADDINCDIR= ../lcommon/inc

CC=     $(shell which gcc)

LIBS=   -lm
FLAGS=  -ffloat-store -Wall -I$(INCDIR) -I$(ADDINCDIR)

ifdef DBG
SUFFIX= .dbg
FLAGS+= -g
else
SUFFIX=
FLAGS+= -O2
endif

OBJSUF= .o$(SUFFIX)

SRC=    $(wildcard $(SRCDIR)/*.c)
ADDSRC= $(wildcard $(ADDSRCDIR)/*.c)
OBJ=    $(SRC(SRCDIR)/%.c=$(OBJDIR)/%.o$(SUFFIX)) $(ADDSRC(ADDSRCDIR)/%.c=$(OBJDIR)/%.o$(SUFFIX))
BIN=    $(BINDIR)/$(NAME)$(SUFFIX).exe


default: depend bin tags

dependencies:
        @echo "" >dependencies

clean:
        @echo remove all objects
        @rm -f $(OBJDIR)/*

tags:
        @echo update tag table
        @ctags inc/*.h src/*.c

bin:    $(OBJ)
        @echo
        @echo 'creating binary "$(BIN)"'
        @$(CC) -o $(BIN) $(OBJ) $(LIBS)
        @echo '... done'
        @echo

depend:
        @echo
        @echo 'checking dependencies'
        @$(SHELL) -ec '$(CC) -MM $(CFLAGS) -I$(INCDIR) -I$(ADDINCDIR) $(SRC) $(ADDSRC)                  \
         | sed '\''s@\(.*\)\.o[ :]@$(OBJDIR)/\1.o$(SUFFIX)g'\''               \
         >$(DEPEND)'
        @echo

$(OBJDIR)/%.o$(SUFFIX): $(SRCDIR)/%.c
        @echo 'compiling object file "$@" ...'
        @$(CC) -c -o $@ $(FLAGS) $<

$(OBJDIR)/%.o$(SUFFIX): $(ADDSRCDIR)/%.c
        @echo 'compiling object file "$@" ...'
        @$(CC) -c -o $@ $(FLAGS) $<


include $(DEPEND)


make 编译后,会出现
Makefile:83: dependencies: NO such file or directory
/bin/sh : dependencies: Read -only file system
make: *** [dependencies] Error 1
作者: bbxyard    时间: 2011-08-27 01:20
本帖最后由 bbxyard 于 2011-08-27 01:23 编辑
这是下载的程序中带的,然后我在linux中进make操作,就会出现下面的问题
Makefile文件为
###
###     Ma ...
liyuanyuansky8 发表于 2011-08-26 15:51

LZ应该是只拷了Makfile而忘了拷其它依赖文件啦

第83行include $(DEPEND)


include指令$(DEPEND)展开就是dependence那个文件如上图所示. 也就error所示啦


LZ 把上述文件放在与Makefile同一级的目录下,再试试哈
作者: liyuanyuansky8    时间: 2011-08-27 08:52
谢谢!
我把bin文件放在了Makefile所在的目录下,但还是出现同样的错误
所下载的所有文件中不包含dependencies文件。
作者: MMMIX    时间: 2011-08-27 09:06
谢谢!
我把bin文件放在了Makefile所在的目录下,但还是出现同样的错误
所下载的所有文件中不包含dependen ...
liyuanyuansky8 发表于 2011-08-27 08:52



    dependencies 是通過上面的 echo "" > dependencies 創建的,你在 Makefile 所在的目錄手工執行下這個命令看看。
作者: liyuanyuansky8    时间: 2011-08-27 10:06

  
还是 有错误
作者: MMMIX    时间: 2011-08-27 10:18
还是 有错误
liyuanyuansky8 发表于 2011-08-27 10:06



    這個錯誤很難理解麼?就是說當前的文件系統只能讀不能寫,你把它放在一個能寫的地方這個錯誤就不會出現了。
作者: liyuanyuansky8    时间: 2011-08-27 10:34
本帖最后由 liyuanyuansky8 于 2011-08-27 10:43 编辑

噢,谢谢,呵呵
但是我把makefile所在文件的只读项取消,但还是不行,能说一下放在一个什么位置比较好吗,我对这方面不是很懂,望给予帮助
谢谢
作者: MMMIX    时间: 2011-08-27 10:59
噢,谢谢,呵呵
但是我把makefile所在文件的只读项取消,但还是不行,能说一下放在一个什么位置比较好吗, ...
liyuanyuansky8 发表于 2011-08-27 10:34



    你如果連什麼是文件系統都不知道的話,這個問題還是找能和你面對面交流的人比較好。雖然是個很簡單的問題,但由於涉及你的具體環境,還是找能直接接觸你機器的人看比較好。
作者: liyuanyuansky8    时间: 2011-08-27 18:58
我身边人对操作系统都不是很了解,请问你能给我解释解释吗?
麻烦你了
作者: liyuanyuansky8    时间: 2011-08-29 15:41
回复 8# MMMIX


    您好
   能问一下,windows下的可读可写文件系统怎么去查找吗?
作者: MMMIX    时间: 2011-08-29 17:20
回复 10# liyuanyuansky8


    不懂 Windows
作者: liyuanyuansky8    时间: 2011-08-30 08:14
那linux呢
作者: liyuanyuansky8    时间: 2011-08-31 08:52
我想在linux中用emacs来打开我在windows下的程序,然后再把它保存在linux中的可读可写的地方,这样不可以解决吗?
作者: MMMIX    时间: 2011-08-31 18:16
我想在linux中用emacs来打开我在windows下的程序,然后再把它保存在linux中的可读可写的地方,这样不可以解决吗?
liyuanyuansky8 发表于 2011-08-31 08:52



    关键是你得先找到在你的 Linux 下可写的文件系统,然后把你的当前目录整个拷贝过去就可以了。不需要 Emacs。
作者: liyuanyuansky8    时间: 2011-09-01 09:44
谢谢
作者: liyuanyuansky8    时间: 2011-09-02 08:45
你好 ,针对第一次提到了Makefiel文件,出现个
checking dependencies
compiling object file "obj/annexb.o" ...
Assembler messages:
FATAL:can't creat obj/annexb.o:没有那个文件或目录
make:***[obj/annexb.o] Error 1




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2