|
发表于 2010-6-29 08:58:40
|
显示全部楼层
可以参考一下如下的方法,以下来自网络http://blog.chinaunix.net/u3/106326/showart_2114556.html
我的qtopia4编译出来用du -s看了一下,有65M多,板子的flash一共只有64M,还要放bootloader,kernel,root files等等,这样根本就不够用。那么就只有给qtopia减减肥了。
上网搜了搜关于裁剪Qtopia的资料,不多,也不够具体。
自己总结了一下:
1.裁剪Qt/Embedded库
源码qtopiacore目录下qconfig-qpe.h中定义了相关宏,用于裁剪Qtopia特性。
可以自定义裁剪Qtopiacore,但要注意特性之间的依赖性,具体参见同一目录下qfeatures.txt。
2.裁剪Qtopia 应用程序
方法1:可以从src/general.pri文件入手,这个文件列出了所有要编译的程序,只要在这里进行添加、删除相应的程序选项就可以达到裁剪qtopia自带程序与功能的目的。
方法2:通过修改源码src 目录下custom.pri,即可实现添加或裁剪应用程序。
输入以下文本,实现裁剪应用程序:
PROJECTS -= applications/addressbook games/fifteen
“-= ”表示要裁剪程序,后面是程序源码在src 目录下的具体子路径。裁剪多个程序时,路径之间用空格符隔开;需要换行编辑时,则用 “ \ ”连接。
若添加应用程序,改用“ += ”即可,而用“ *= ”可以避免重复添加已存在的程序。
3.裁剪时区信息(自己想的,有待验证)
因为在源码编译安装后,
执行拷贝时区信息
cp -rvf /usr/share/zoneinfo $QTOPIATARG/
这样的话是拷贝的主机的zoneinfo du一下发现有5M多,太大了吧。
后来看到其它文章中的做法是 cp -rvf $QTOPIAINST/etc/zoneinfo $QTOPIATARG,赶紧du了一下$QTOPIAINST/etc/zoneinfo,发现才2M多,小了很多,当然用这个好了。参考别人的东西,也要不断的思考才行,找到最适合自己的才行,不能一味照搬。
可是区区一个时区信息就要用掉2M多,对于资源紧张的开发板来说,还是相当浪费,能不能再减减肥呢?于是我查看了一下zoneinfo中的内容,有很多子目录,包含了各个洲的一些时区信息文件。我又想,我只要用一个Asia中的Shanghai时区就行了,那能不能只要那一个文件呢?那个文件只占了4K而已。或者至少可以删掉几个目录吧?有些时区根本用不到的。
在qpe启动脚本中可以添加如下语句:
export TZ=Asia/Shanghai #此句设置时区
现在只是个想法,具体还要实践,试试再说。 |
|