• 5740阅读
  • 9回复

Qt for BlackBerry 10安装及命令行helloworld [复制链接]

上一主题 下一主题
离线XChinux
 

只看楼主 倒序阅读 楼主  发表于: 2012-12-26
由于Eclipse太耗费资源了,也习惯了VIM开发,命令行编译,依据下面网址中文章所述,摘出命令行编译发布方法:
http://qt-project.org/wiki/Setting-up-Qt-Creator-for-BlackBerry-and-QNX

注: 以下内容全是Windows 7下面试验的.

1.  下载安装BlackBerry 10 Native SDK
2.  下载安装BlackBerry 10 Dev Alpha Simulator
3. 申请BlackBerry Signing code keys

现在我们假设Simulator已经启动了,BlackBerry 10 Native SDK(以后简称为BBNDK)安装在了D:\bbndk目录下

4. 在Simulator中开启开发者模式
    Settings->Security and Privacy->Development Mode

5. 新建一个快捷方式到桌面(或开始菜单等),命令为:
   %COMSPEC% /k "D:\bbndk\bbndk-env.bat"

    然后双击这个快捷方式,打开一个命令行,这里已经将BBNDK的许多环境变量都设置好了,之后的过程,全部是在这个命令行里处理

6. 注册csj,这里要填入前面申请csj时的PIN和邮件中收到的两个.csj文件, storepass自己设定好,后面要用
$blackberry-signer -register -csjpin <csj pin> -storepass <KeystorePassword> <client-RDK-xxxxxx.csj file> <client-PBDT-xxxxx.csj file>

7. 生成debug token,这里要输入的device PIN,可以从Simulator中的Settings->About->Hardware下找到,debug_token_file_name.bar自己定$blackberry-debugtokenrequest -storepass <KeystorePassword> -devicepin <device PIN> <debug_token_file_name.bar>

8. 安装debut token到设备或Simulator, Simulator的IP地址可以在模拟器底部看到,没有密码。
$blackberry-deploy -installDebugToken <path to debug token file> -device <IP address of device> -password <device password>

经过上面的步骤,整个开发环境就搭配好了,下面开始写hello world
可直接使用QtCreator创建一个Qt Quick 1 Application的项目,这样省事些,假设我们创建的示例路径为D:\hellworld, 那么下面是修改hello world过程

9. 创建bar-description.xml文件,放到D:\helloworld目录下
  1. <?xml version='1.0' encoding='utf-8' standalone='no'?>
  2. <qnx xmlns="http://www.qnx.com/schemas/application/1.0">
  3.     <id>com.myapp.hellworld</id>
  4.     <name>helloworld</name>
  5.     <versionNumber>1.0.0</versionNumber>
  6.     <description>This is my first hellworld app on blackberry</description>
  7.     <initialWindow>
  8.         <systemChrome>none</systemChrome>
  9.         <transparent>false</transparent>
  10.         <autoOrients>true</autoOrients>
  11.         <aspectRatio>landscape</aspectRatio>
  12.     </initialWindow>
  13.     <env var="QML_IMPORT_PATH" value="app/native/imports"/>
  14.     <env var="QT_PLUGIN_PATH" value="app/native/plugins:/usr/lib/qt4/plugins"/>
  15.     <env var="LD_LIBRARY_PATH" value="app/native/lib:/usr/lib/qt4/lib/"/>
  16.     <action system="true">run_native</action>
  17.     <configuration name="Simulator-Release">
  18.           <platformArchitecture>x86</platformArchitecture>
  19.           <asset path="helloworld" entry="true" type="Qnx/Elf">helloworld</asset>
  20.     </configuration>
  21.     <configuration name="Simulator-Debug">
  22.           <platformArchitecture>x86</platformArchitecture>
  23.           <asset path="helloworld" entry="true" type="Qnx/Elf">helloworld</asset>
  24.     </configuration>
  25.    <!-- 如果有真机,则去掉这个注释
  26.     <asset type="Qnx/Elf" path="helloworld" entry="true">helloworld</asset>
  27.    -->
  28.     <asset path="qml">qml</asset>
  29. </qnx>


10. 开始编译过程,debug还是release自己定
   如果是Simulator:
$qmake -spec blackberry-x86-qcc "CONFIG+=simulator debug"
$make
   如果是真机:
$qmake CONFIG+=release"
$make

经过上面的步骤,此时已经生成了hellworld文件,下面我们需要签名、打包、安装等过程

11. 生成安装包
  可以以开发者模式生安装包
$ blackberry-nativepackager  -devMode  -package helloworld.bar bar-descriptor.xml -debugToken <debug_Token_file.bar>


  也可以以签名方式生成安装包并签名
$ blackberry-nativepackager -package helloworld.bar bar-descriptor.xml
$ blackberry-signer -storepass <KeyStorePassword> helloworld.bar

12. 将软件发布到device或simulator(手头没真机,当然是安装到simulator了
$ blackberry-deploy -installApp -package helloworld.bar -device <device_ip> -password <device_password>

如果要删除,则执行下面命令:
$ blackberry-deploy -uninstallApp -package helloworld.bar -device <device_ip> -password <device_password>
下面是运行效果:









二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线mmmooo
只看该作者 1楼 发表于: 2012-12-28
吼吼吼~~~ Hello World 出来啦。。。
离线uidab

只看该作者 2楼 发表于: 2013-01-18
回 楼主(XChinux) 的帖子
第七步中的   device PIN 怎么找,我这没有Simulator中的Settings->About->Hardware.难道是我设置出问题了??
有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
离线XChinux

只看该作者 3楼 发表于: 2013-01-18
About界面中上方不是有个下拉框么.
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线uidab

只看该作者 4楼 发表于: 2013-01-18
回 3楼(XChinux) 的帖子
我的simulator 启动后一直就是



我都有点不好意思了,昨天一天下载,早起搞到现在。
有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
离线XChinux

只看该作者 5楼 发表于: 2013-01-18
这个就不知道了,我在openSUSE 12.2下在VMware Player中一启动Simulator就死掉了。Windows下用的VMware Workstation 一直正常。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线uidab

只看该作者 6楼 发表于: 2013-01-18
回 5楼(XChinux) 的帖子
跳过7、8两个步骤,按照命令行已经到第12步了, 可是他启动成这样,我该怎么运行程序呢?
有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
离线XChinux

只看该作者 7楼 发表于: 2013-01-18
你直接生成后签名吧,然后把.bar发给我(邮箱),我在开发机或模拟器上给你试验一下。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线XChinux

只看该作者 8楼 发表于: 2013-01-18
$ blackberry-nativepackager -package helloworld.bar bar-descriptor.xml
$ blackberry-signer -storepass <KeyStorePassword> helloworld.bar

用这两个命令生成包及签名。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线uidab

只看该作者 9楼 发表于: 2013-01-18
回 7楼(XChinux) 的帖子
我先升级一下虚拟机看看。下午重装一下ddk。

如果还不行,下午给你发。
有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
快速回复
限100 字节
 
上一个 下一个