qtopia4 转载

来源:百度文库 编辑:神马文学网 时间:2024/04/29 12:12:19
我的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 #此句设置时区

现在只是个想法,具体还要实践,试试再说。