Chinaunix首页 | 论坛 | 博客
  • 博客访问: 642043
  • 博文数量: 90
  • 博客积分: 10010
  • 博客等级: 上将
  • 技术积分: 2018
  • 用 户 组: 普通用户
  • 注册时间: 2007-03-03 13:09
文章分类

全部博文(90)

文章存档

2010年(7)

2009年(23)

2008年(60)

我的朋友

分类: LINUX

2009-03-22 18:56:43

      Lynn Lin

    在使用OpenEmbedded过程中,你会发现OE会占用10个G以上的硬盘空间,当然,现在硬盘便宜,10几个G也不是多大问题,但是如果你用的机器磁盘空间不大,那么你就需要考虑如何让OE占用更少的空间
     在classes目录底下有个rm_work.bbclass,这个class的作用就是删除在build过程中 ${workdir}目录底下的文件,毕竟这个目录底下这是编译的一个中间状态,里面除了包含一些debug信息,其他的信息应该用处不大,所以你可以在 local.conf里面 写上
        INHERIT += "rm_work"
那么在build的过程中就会删除除了temp目录之外的所有目录,我们来看下这个函数,很简单

do_rm_work () {
    cd ${WORKDIR}
    for dir in *
    do
        if [ `basename ${dir}` = "temp" ]; then
            echo "Not removing temp"
        else
            echo "Removing $dir" ; rm $dir -rf
        fi
    done
}


如果你没有在conf文件里面写上INHERIT的话,你可以使用 bitbake -c rm_work_all package这样删除

阅读(992) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~