Linux下的MeeGo SDK安装—Xephyr方式

介绍          
MeeGo SDK由以下部分构成:


  • 一个MeeGo chroot环境,这包含了一个基于Xephyr (http://www.freedesktop.org/wiki/Software/Xephyr ) 的MeeGo应用程序模拟器(仅支持Linux),一些在Xephyr里启动/停止MeeGo桌面的脚本,以及可以远程配置和部署MeeGo设备的Qt Creator。
  • 一个启动MeeGo chroot环境,并运行模拟器和Qt Creator的meego-sdk-chroot 脚本。

要安装MeeGo SDK,最简单的方法是下载这些组件的打包版本。这将在下一节讨论。
系统要求          
        要在Xephyr里运行MeeGo模拟器,你需要一个比较新的Linux发行版(例如Fedora 11,Ubuntu 9.10)以及Intel的硬件环境。硬件环境有以下要求:


  • CPU: 32bit Intel(r) Atom(tm) or Intel(r) Core(tm) 2 CPU (support for SSSE3)。注意: MeeGo模拟器无法在不支持SSSE3的CPU上运行。
  • 一块兼容的Intel显卡。GMA-500,Nvidia,以及ATI的芯片组都无法提供支持

    译注:这是MeeGo模拟器的要求,不是SDK的要求。我可以在AMD处理器和NV显卡的机器上,运行 MeeGo SDK ,并正常编译/调试程序。
安装MeeGo chroot环境          
        MeeGo chroot压缩包是一个大文件(接近800M)。它不仅有MeeGo自身的所有库文件,也其他有用的东西(Xephyr, scripts, Qt Creator)。
下载MeeGo chroot压缩包文件: wget http://download3.meego.com/meego-sdk-0524.tar.bz2
解压MeeGo chroot压缩包文件:

  1. sudo tar jxvf meego-sdk-0524.tar.bz2
复制代码

另一个方案是自己创建一个MeeGo chroot,参见Building a MeeGo chroot on Linux 。  
安装meego-sdk-chroot脚本         
meego-sdk-chroot
脚本会设置chroot环境的挂载点,然后用恰当的方式启动root环境;在离开chroot环境时,它也会尝试正确地卸载整个环境,并清除在chroot环境中启动的进程。
下载:

  1. wget [url]http://download3.meego.com/meego-sdk-chroot[/url]
复制代码

给脚本可执行权限:

  1. chmod +x meego-sdk-chroot
复制代码

移动到/usr/bin

:

  1. sudo mv meego-sdk-chroot /usr/bin
复制代码

为模拟器配置host
下一步,是配置host的X环境,让模拟器(在chroot环境下运行)可以正确地显示在普通用户的屏幕上:
xhost +SI:localuser:  (username)  //username使用你现在所使用的用户名
(每次重启后,在运行模拟器和Qt Creator之前你都需要执行这一步)
进入 MeeGo chroot 环境
meego-sdk-chroot
脚本将设置一个MeeGo chroot环境,并给你一个该环境下的shell:

  1. sudo meego-sdk-chroot ~/meego-sdk-0524
复制代码

(用你的chroot目录代替上面的'~/meego-sdk-0524 )注意,这个脚本使用了chroot命令。有些时候,root用户无法在PATH环境变量里定位这个命令(在Fedora里,chroot命令在/usr/sbin 路径下)。你可以在meego-sdk-chroot 脚本的顶部添加一行alias,以解决这个问题:
alias chroot='/usr/sbin/chroot'
脚本运行后,会输出下面这样的内容:

  1. mount --bind /proc /home/ell/meego-sdk-0524/proc
  2. mount --bind /sys /home/ell/meego-sdk-0524/sys
  3. mount --bind /dev /home/ell/meego-sdk-0524/dev
  4. mount --bind /dev/pts /home/ell/meego-sdk-0524/dev/pts
  5. mount --bind /tmp /home/ell/meego-sdk-0524/tmp
  6. mount --bind /var/lib/dbus /home/ell/meego-sdk-0524/var/lib/dbus
  7. mount --bind /var/run/dbus /home/ell/meego-sdk-0524/var/run/dbus
  8. cp /etc/resolv.conf /home/ell/meego-sdk-0524/etc/resolv.conf
  9. root@meego-netbook-sdk:/#
复制代码

安装其他软件
你可以在chroot环境下正常安装软件(和最新的netbook镜像一样)。
进入chroot环境,然后执行:

  1. zypper install <package>
复制代码

下面这个命令可以将整个MeeGo镜像更新到最新版本:

  1. zypper dist-upgrade
复制代码

运行模拟器
在chroot环境下,以root的身份执行:

  1. startmeego &
复制代码

这将启动Xephyr服务器,并运行一个脚本。这个脚本在Xephyr里启动一个MeeGo桌面。如果你想在chroot环境里启动一个程序,并显示在模拟器窗口里,你可以:
DISPLAY=:2 glxgears
(用你想启动的程序名代替glxgears)
在模拟器里Debugging
如果你的模拟器出现了问题,可以使用debug脚本,看看具体发生了些什么:
startmeego-debug
这个脚本会在控制台输出一些信息,这些信息应该能给你问题的线索。
  模拟器里的 Netbook UX 界面 它看起来像这样:
Simulator_running_netbook_ux.png


已发现的问题:

  • 一些依赖DBus的工具条组件(比如电池,网络)无法报告设备的工作状态。

停止模拟器
要停止模拟器,只需要离开chroot shell:
exit
这会停止模拟器启动的所有进程,并卸载chroot环境使用的路径。这会输出下面这样的信息:

  1. exit
  2. umount /home/ell/meego-sdk-0524/proc
  3. umount /home/ell/meego-sdk-0524/sys
  4. umount /home/ell/meego-sdk-0524/dev/pts
  5. umount /home/ell/meego-sdk-0524/dev
  6. umount /home/ell/meego-sdk-0524/tmp
  7. umount /home/ell/meego-sdk-0524/var/lib/dbus
  8. umount /home/ell/meego-sdk-0524/var/run/dbus
复制代码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值