如何去掉在make后所产生的.o文件?

pengyou982 2003-03-03 11:13:22
在make后, 当前目录下就产生n多的.o文件,能不能把这些.o文件生成到其它的目录?或者有更好的建议?
...全文
1720 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
mikekong 2003-03-05
  • 打赏
  • 举报
回复
在makefile中加删除的语句。
hiliyun 2003-03-05
  • 打赏
  • 举报
回复
加一句@rm -f $*.o
或者 mv -f $*.o $(BINDIR)
就可以了!
liao2001 2003-03-05
  • 打赏
  • 举报
回复
加入:
mv *.o yourdir
tingya 2003-03-04
  • 打赏
  • 举报
回复
给出一个例子,你只要将BINDIR设置成为非当前路径就可以了,所有的.o全部到了BINDIR目录下,不会在当前目录下出现。
CLEANFILE=core core.* *.core *.o a.out
BINDIR=/usr/tingya/program/feditor
CFLAGS=-lmenu -lform -lpanel -lcurses
TARGETS=${BINDIR}/f_winfun
#${BINDIR}/a.out

all:${TARGETS}

clean:
@- rm -f ${CLEANFILE} ${TARGETS}

${BINDIR}/f_winfun:f_winfun.o f_rconfig.o f_filefun.o f_strfun.o
${CC} -o $@ f_winfun.o f_rconfig.o f_filefun.o f_strfun.o ${CFLAGS}
Nvram 2003-03-03
  • 打赏
  • 举报
回复
编译时使用-o 参数
pengyou982 2003-03-03
  • 打赏
  • 举报
回复
这样子当然可以,但这样子一来, 一旦改了原码后,所有的代码都要重新编译。我是希望能把能不能把这些.o文件生成到其它的目录,当改了部分代码后而不用编译所有的代码
zico 2003-03-03
  • 打赏
  • 举报
回复
makefile中加入
rm name.o
zhouzhaohan 2003-03-03
  • 打赏
  • 举报
回复
当然可以,只要修改makefile文件就行,比如把

%.o:%.c改成
OBJDIR=obj
obj:
mkdir obj
obj/%.o:%.c
只是示意,不能照搬。
另外mkdir前面应该是个tab,而不是只是空格。

23,217

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧