为Qt应用制作Maemo安装包
Template:ArticleMetaData
Template:Abstract
本文以下截图采用 “Load Applet” 应用来截取。该应用可以在“应用管理器”(Application Manager)中安装。
打包流程主要按照以下步骤来完成:
创建打包模板 ==> 根据需求进行定制 ==> 编译,打包
开启MADDE 环境[edit | edit source]
如果你使用的是Windows系统,可以通过 Start 菜单-> Programs -> Nokia Qt SDK -> MADDE Terminal 进入 MAEED环境
终端开发环境如下显示,类似于普通的Linux终端
注意:此时的工作目录jizhu,对应的应该是Windows里的目录C:\NokiaQtSDK\Maemo\home\jizhu。这里的“jizhu”是Windows的登录名字。在每个人的PC上,这个名字可能会有不同。
创建打包模板[edit | edit source]
在以上的打开的MADDE环境中执行以下命令(qthello是要生成的工程名,你可以选择你想要的名字,比如myapp)
mad pscreate -t qt_simple qthello
就为我们创建好了一个基本的Qt工程环境以及一些相关的打包文件和目录
-t 是指模板的选项,qt_simple指明利用pscreate创建一个Qt应用的模板,其它可用选项可以用 mad pscreate -l 命令看到,输出结果为
TEMPLATE NAME TYPE DESCRIPTION
empty prog Empty project
lib_simple lib Simple example for C/C++ libraries
qt_lib_simple qtlib Simple example for Qt libraries
qt_simple qtprog Simple example for Qt programs
simple prog Simple example for C/C++ programs
根据需求进行定制[edit | edit source]
Qt工程文件定制[edit | edit source]
利用模板生成的Qt应用只会在屏幕上出现一个显示“Hello World!"的按钮,需要更多的功能则需要在.pro文件中添加一些相应的Qt相关文件,可以修改模板自动生成的qtprog.pro文件。
TARGET = qthello
HEADERS +=
SOURCES += qtmain.cpp
FORMS +=
LEXSOURCES += #LEXS#
YACCSOURCES += #YACCS#
INCLUDEPATH +=
LIBS +=
DEFINES +=
更改应用程序名[edit | edit source]
在将应用安装到手机上时,在应用程序列表里会有一个应用的名字。模板生成默认名字是 “Mad Qt example”
可以通过修改 qthello/data/qthello.desktop 文件中的 Name 变量进行修改
[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Name=Mad Qt example
Exec=/usr/bin/qthello
Icon=qthello
更改应用图标[edit | edit source]
应用列表图标
该图标是指在主应用列表中通过点击能够启动应用的大图标。为更改现在在应用程序列表里的图标,你需要准备一个64x64大小的png格式的图片,然后拷贝覆盖到模板生成的那个图标文件。
因为当前的例子工程是qthello,那么要覆盖的图标为 qthello/data/64x64/qthello.png 。
File:Maemo icon 2.png
已装软件图标
该图标用在应用管理中,是用于显示已装的软件包图标。要修改该图标需要改动qthello/debian/control文件中XB-Maemo-Icon-26字段的内容
File:XB-Maemo-Icon.png
可以看到该图是以文本形式存在的,是图片的base64编码。要将png转成转成文本使用如下命令
mad base64 finename.png >filename_base64.txt
然后打开filename_base64.txt文件,将其中的文本拷贝到前面的XB-Maemo-Icon-26字段中。开发者可以使用 Uedit32 工具通过选择“列”方式来插入空格。
注意:
- 该处图片大小应为26x26的
- 拷贝到XB-Maemo-Icon-26处时,base64文本每一行的前面都有一个空格。
编译,打包[edit | edit source]
以上工作准备完毕就可以开始进行编译和制作安装包了,只需3个步骤
- 生成Makefile:
cd qthello
mad qmake
- 编译工程
mad make
- 创建.deb安装包
mad dpkg-buildpackage
以上步骤都成功的话,将会在 qthello 上一级目录下,会生成一个名叫 qthllo_0.1_armel.deb 的安装文件。
通过“蓝牙”/“WLAN”/“USB”等方法将 qthllo_0.1_armel.deb 拷贝到N900手机上(通过PC suite/Ovi Suite,选择 大容量存储),然后通过N900的文件管理找到该文件,点击就可以安装qthello了。
通过如下的命令,即可知道应用所安装的目录:
对没有安装的应用:
dpkg -c package_name.deb
对于已经安装的应用:
dpkg -L package_name
相关文档[edit | edit source]
- 创建Maemo Qt应用
- Package a Qt application
- Package a Qt application for Maemo
- Getting started with MADDE on Windows
- 正式发布诺基亚N900中文汉化包
本文用到的两个图片文件File:Bug 64x64.pngFile:Msn 26x26.png