配置 MeeGo QUEM Netbook 开发环境

来源:互联网 发布:windows怎么换苹果系统 编辑:程序博客网 时间:2024/04/30 05:49

1.硬件要求:

1.1 Cpu:必须支持VT即虚拟化。
大部分的AMD处理器都支持VT。
Intel只有酷睿系列的某一些型号才支持。
; @4 `# x2 z- r( M1.2显卡:支持硬件加速,一般的显卡都应该会支持吧。
1.3 测试环境 
    三星笔记本R26,CPU T8100,VGA ATI X2300,内存 2G,硬盘500G,系统 Ubuntu 10.04。
( |0 p3 W5 h7 t; W- J说明:MeeGo netbook Application 可视化开发工具为Qt Creator for Meego 及虚拟软件QEMU。都包含在安装包install-meego-dev-env-0.7.25-linux-i686.sh中。
( |/ h, g0 W. T2 M" c! @          Qt Creator用于程序代码编写及界面设计,而QEMU用于虚拟运行Meego。在QT配置好后,编写的程序会编译成rpm包,自动载入到QEMU虚拟的MeeGO中运行。此时可以在弹出的窗口中看到程序在虚拟机中运行的结果。
% K4 w1 r2 Y" I$ K使用虚拟机的优点:不需要一台真实的MeeGo netbook。缺点:虚拟MeeGo的速度会有些慢。
8 x9 I% /, _/ E2.准备工作:
" {" F/ o/ g* {0 _; V- I2.0 MeeGo SDK 几种开发环境比较
      有篇博文,推荐大家先阅读,再继续后面的工作。
       http://blog.csdn.net/vip_dog/archive/2010/08/14/5808411.aspx
( M. Q9 G! j; h2 s: a
2 _0 k1 z. o& [7 y, /2.1下载环境所需要的文件
ubuntu中下载会比较慢,可以先在windows下用迅雷下载好。
(1)虚拟软件qemu-gl  2.09Mb
1 Y6 G! K& a' a  A- w     http://download3.meego.com/sep09/qemu-gl_0.12.4-4_i386.deb

(2)Qt Creator for meego 及相关工具  224Mb(主要工具都在这里头)
  w6 e. T7 V. `9 [/ V) q0 |     http://download3.meego.com/sep09/install-meego-dev-env-0.7.25-linux-i686.sh
+ r& Y2 N0 z3 E: Y
(3)SDK Image for netbook  517Mb( 其实就是一个meego netbook镜像)
, }* J% y& l6 U$ Ehttp://download3.meego.com/sep09/meego-netbook-ia32-1.0.80.12.20100727.1-sdk-pre0901.raw.tar.bz2
(下载后不要改变文件名,否则不能正常安装)
4 ?% b) s: L8 ~. U* G  H1 Z( k
5 W$ [& @+ z- t! V- ^将这三个下载好的文件复制到 /home/username/  (username为当前ubuntu用户名,每个人的不一样。)
' ]/ k" i# x$ p3 F; _( `' Z3 i3.安装
. L: D* G- p8 s8 c9 u' C3.1 加载KVM模块

    (1)检查加载状态  
5 y& ~( /1 W- K7 i( [0 L( w: P5 x3 k% q      

  1. $ lsmod | grep kvm

      若什么也没显示,说明还未加载
    (2)显示有哪些可加载模块

  1.        $ find /lib/modules/ -name "kvm*"


" i6 b  J! ^9 /     显示如下:

  1. //lib/modules/2.6.32-25-generic/kernel/arch/x86/kvm
  2. /lib/modules/2.6.32-25-generic/kernel/arch/x86/kvm/kvm.ko
  3. /lib/modules/2.6.32-25-generic/kernel/arch/x86/kvm/kvm-intel.ko
  4. /lib/modules/2.6.32-25-generic/kernel/arch/x86/kvm/kvm-amd.ko
  5. /lib/modules/2.6.32-21-generic/kernel/arch/x86/kvm
  6. /lib/modules/2.6.32-21-generic/kernel/arch/x86/kvm/kvm.ko
  7. /lib/modules/2.6.32-21-generic/kernel/arch/x86/kvm/kvm-intel.ko
  8. /lib/modules/2.6.32-21-generic/kernel/arch/x86/kvm/kvm-amd.ko


  j# t. q8 J1 o(3)启动最新内核2.6.32-25-generic的kvm模块
; D9 L1 ?1 B; k, c$ u, _. a如果是intel的cpu则运行

  1.      $ sudo insmod /lib/modules/2.6.32-25-generic/kernel/arch/x86/kvm/kvm.ko
  2. $ sudo insmod /lib/modules/2.6.32-25-generic/kernel/arch/x86/kvm/kvm-intel.ko


如果是amd的cpu则运行

  1. $ sudo insmod /lib/modules/2.6.32-25-generic/kernel/arch/x86/kvm/kvm.ko
  2. $ sudo insmod /lib/modules/2.6.32-25-generic/kernel/arch/x86/kvm/kvm-amd.ko
  3. /*
  4. 技巧每次开机都得运行这两行命令,为了方便可以设置ubuntu启动时自动执行命令。
  5. $ sudo chmod 777 /etc/rc.local     //设置读取权限
  6. $ sudo gedit /etc/rc.local          //打开配置文件


' J7 Z- p& H; O: d

在”exit 0”前加入这两行命令
5 y9 f; N- r$ I( a3 k% ~g
intel的cpu则加入

  1. sudo insmod /lib/modules/2.6.32-25-generic/kernel/arch/x86/kvm/kvm.ko
  2. sudo insmod /lib/modules/2.6.32-25-generic/kernel/arch/x86/kvm/kvm-intel.ko


$ {6 f; g; Y0 J" o8 ]+ p% u
amd的cpu则加入

  1. $ sudo insmod /lib/modules/2.6.32-25-generic/kernel/arch/x86/kvm/kvm.ko
  2. $ sudo insmod /lib/modules/2.6.32-25-generic/kernel/arch/x86/kvm/kvm-amd.ko



6 x/ H3 s9 d& T0 H( ]8 C
保存即可。
*/
+ z$ k( H. ?/ w; M; p
(4)检查kvm是否成功加载
1 g* ?5 K: b# ^7 ^

  1. $ lsmod | grep kvm


运行结果:

  1. kvm_intel          39416  0
  2. kvm              244969  1 kvm_intel


$ R% G" @& b- M8 i# P$ /& ^! Y
  R3 {( j  r% x/ ~; [! Q至此处已经成功加载kvm模块。
# G  ^6 |4 b, e& S! Y7 t) O. k
% `- p5 W' q( m/*
提示(这段内容跟这篇文章所要讨论的内容没有关系,也不会用到visualbox)
如果有时候你会用visualbox,那么运行前需要卸载kvm模块。否则visuabox会报错。

  1. $ sudo modprobe -r kvm-intel


7 ?$ I/ f% j( T/ I- O! p- v或者

  1. $ sudo modprobe -r kvm-amd


9 I, E% x3 U* ]8 q! e, `}
6 |4 T6 l" k" G# z*/

) Q* Z- ]( c# x2 V+ y1 V3.2 让qt creator可以将程序编译为rpm包(ubuntu要连网)

  1.   $ sudo apt-get install rpm


//如果忘记安装rpm,那么后面qt生成rpm的过程中会出错。每到这里就想起QQ了^_^,是他调通的。
1 /& ~- ]: W' j9 V* P. |7 v& K

8 I) U  t# j$ m7 Y8 i" H" F3.3 安装虚拟机qemu-gl
9 b" a* W1 }2 L. |假设准备工作中下载的三个文件都存放在 /home/username/   (username为ubuntu当前用户名) 
进入保存下载的三个文件的目录

  1.    $ cd /home/username/


; m$ k3 @0 a5 n: V) Q   
7 z/ q6 y/ Y' _  L! j% I. V   安装虚拟机

  1.    $ dpkg –i qemu-gl_0.12.4-4_i386.deb


8 b) U: J5 [6 |  O# W: e9 a! y# |
3.4安装qt工具集
% I" r) V/ G, @( G

  1. $ cd /home/username/   //进入存放文件目录
  2. $ sudo chmod 777 install-meego-dev-env-0.7.25-linux-i686.sh   //给于权限 安装
  3. $ ./install-meego-dev-env-0.7.25-linux-i686.sh           //安装


4 V0 W6 B3 S) B
执行后会问你yes/no,输入yes回车就行。然后会提示你安装位置,不用改默认就行。
/ S+ t5 q3 n' P按提示操作即可,默认安装在 /home/username/meego-sdk/0.7.25/
" {; a7 e1 {# u5 x3 M(username为我的ubuntu用户名,每个人的会不同)
等待若干分钟,就安装完了。至此qt工具集安装成功
, ~: _$ u, }' X
( q) v6 W2 H2 F3.5安装sdk for netbook (安装时间比较久) 其实就是一个meego的raw格式的镜像文件。
* I. h, [! ^& m* }(Wiki中将这步操作叫作Create MeeGo development target (toolchain) from image file)
经过3.4的操作,程序会在用户目录下生成一个meego-sdk文件夹 /home/username/meego-sdk,
qt及工具都在里面。
9 ^9 W( ~4 A6 o& Q
8 w' B5 W0 N7 P" n; G

  1. $ cd  /home/username/meego-sdk/0.7.25/bin/    //进入bin目录


6 s6 L% G4 p* m7 x7 H
创建meego development target
$ f. @$ x" ]1 U4 Y! B5 o+ Y$ a

  1. $ ./mad-admin create_from_image /home/username/meego-netbook-ia32-1.0.80.12.20100727.1-sdk-pre0901.raw.tar.bz2


( A- t6 U' a1 D) W
4 n' b- F+ S% [$ /6 X; r  (这步操作会首先解压meego-netbook-ia32-1.0.80.12.20100727.1-sdk-pre0901.raw.bz2 文件,然后再解压meego-netbook-ia32-1.0.80.12.20100727.1-sdk-pre0901.raw这个镜像,可以看做是两次解压,第二次解压出的文件中有qt配置时所用到的qmake文件)
, }" y; p- E9 L' t4 T   
. @0 x  K' l% e+ B" X& }  |; D! n   解压时间会比较长,慢慢等吧。`

解压完后可以查看是否创建target成功
; D* k3 E3 Z' G0 d; C; l6 z) T

  1.    $  ./mad-admin  list  


   显示:
, }, O) P% S- O1 /) z

  1. Targets:
  2.    fremantle-1030                                       (installable)
  3.    maemo412-1                                           (installable)
  4.    harmattan-1024                                       (installable)
  5.   meego-netbook-ia32-1.0.80.12.20100727.1-sdk-pre0901  (installed)
  6.   Runtimes:
  7.   qemu-n900-pr12                                               (installable)
  8.   rx48-diablo                                                  (installable)
  9.   meego-netbook-ia32-1.0.80.12.20100727.1-sdk-pre0901-runtime  (installed)


我用蓝色标注的部分installed。说明sdk for netbook安装成功了。
# `3 j/ X5 n3 g; m) W0 V/ A至此,所有安装操作都完成了。

   
+ ?- d! _) ~- q" Y4运行

4.1运行Qt Creator
+ ^1 t: l8 r( e" I( u

  1. $ cd /home/username/meego-sdk/0.7.25/tools/qt-creator/bin/     //进入qt目录
  2. $ ./ qtcreator                                  //运行qt


提示:创建一个qtcreator的快捷方式在桌面上,省的以后每次都得找目录

! F- |4 N4 m# i+ a
5配置qt
1 u/ {9 L) o- b$ W' {这步有点麻烦,不过只要前面安装都正确了,配置起来还是很快的。
9 a6 n+ J) v0 j, d( R( W6 D3 {5.1运行qtcreator
5.2 添加qmake
1 z9 Y; h; Q+ /! l/ t    进入菜单Tools>Options
    左边一栏选择”QT4”,右边选择第一个选项卡”Qt Versions”
* A3 y" ~) ?% j1 U! d. S; |2 u    这一步是要添加qmake文件,所以点击那个加号按钮。
    Version name 填 meego sysroot
    点击Browse按钮按照这个路径添加:
( y5 }  o% t3 j( f# M' x

  1. /home/username/meego-sdk/0.7.25/targets/meego-netbook-ia32-1.0.80.12.20100727.1-sdk-pre0901/bin/qmake


    然后点击open按钮
    注意:此处还有一步操作,点击Rebuild按钮,等Debugging Helper后面出现一个小对钩后,再点击OK按钮。      
      
. C4 ~; }( d) i      
. h# y- I- Q* T  N; C7 A$ k
5.3 qtcreator中设置与虚拟meego通信。
; E  ?. b) B! x; {! P  d   进入菜单Tools>Options
& L8 m- _: W  z# L4 E% ?  b: J. @) i   左边一栏选择”Projects”,右边选择第5个标签”Meego Device Configurations”
0 x9 |1 `7 R; W' ^& B) D  }. N" W   点击add按钮,
4 ?: l/ Q" E' K! A% `; ^% t7 x   Name填”meego emulator“,
2 a5 h2 |$ [# c6 G( X/ {/ w   Device type 选 “Meego Emulator”,
   Authentication type 选 “Password”  
   Host name 默认为 localhost
   Username 填 root
9 J# {  k/ y1 x# ~* H   Password 填 meego
2 F, V3 {0 U4 e& B' H   其它都为默认值
   最后点击OK按钮。
! Y$ A/ K. ]1 f/ L. W4 s  d" E   
0 v9 r' s3 O, v; m   
" `% r+ ~! O4 ]3 m
/ N& M9 e/ k' f$ y" B3 ^3 D5.4 新建工程后的设置
        运行qt,新建工程。 菜单FIle>New File or project 弹出新建工程对话框。        
    左侧Projects选择Qt C++ Project,右侧选择Qt Gui Application创建一个适用于上网本的工程。
    点击choose按钮。
    Name:输入工程名 test
) Y/ _; v, C( L5 A    Create in:输入保存路径/media/e,也可以单击Browse按钮,选择路径。
    接下来的窗口中Base Class:选择QDialog。点击next按钮。后面也一路确认。
    至此工程已经新建好。但还需要配置工程。
' q" @# A. ~9 D. @5 @/ N1 p* q; N    点击左面板Projects,然后点击Build Settings下的Add按钮,选择列表中的Using Qt Version “meego sysroot“,然后点击OK。(每新建一个工程都要设置这一步)
    启动虚拟MeeGo,点击左侧工具栏从下往上数第2个图标,运行虚拟MeeGo。会弹出一个窗口,过一会,meego就启动完成了。虚拟的meego运行有点卡(若点击数次图标都无反应,说明没有加载kvm模式。按照3.1步骤加载内核即可)。
+ l7 o7 u% f! m. A      让写的程序运行显示在meego中。点击qt左下方的绿色按钮,run运行程序。
      qt提示字符:
. R; o' c3 Z8 z

  1.       Cleaning up remote leftovers first ...
  2. Initial cleanup done.
  3.     Files to deploy: /home/wxl/rpmbuild/RPMS/i386/test-0.1.0-1.i386.rpm.
  4.     Deployment finished.
  5.     Starting remote application.


    说明编译运行成功。切换到虚拟机,点击MeeGo中的“zones“即可看到运行的程序,一个空白的对话框。
& @; f# z" [$ T* O# Y+ S0 k: / `
至此,Ubuntu下QT&Quem MeeGo netbook开发环境搭建完成。
5 U( s" C: L3 c* p
: @, U$ N, ^# p推荐:
# M# A1 N9 G0 }http://wiki.meego.com/MeeGo_SDK_with_QEMU            wiki中Meego_SDK_QEMU的搭建
& d) f5 l6 S5 k  A; O4 Ahttp://www.meegox.com/category/sdk-meego-dev         在PC上安装handset版meego的qemu虚拟机
# O8 Q( `5 {* thttp://wiki.meego.com/SDK/Docs/1.1/Creating_Hello_World          Create Hello
http://blog.csdn.net/vip_dog/archive/2010/08/14/5808411.aspx     MeeGo SDK 几种开发环境比较。
http://wiki.meego.com/    meego wiki
( m' L2 U8 I7 fhttp://www.meegox.com/    meego中文网,其中的环境频道有相关环境搭建的文章。

 

 

原创粉丝点击