感谢支持
我们一直在努力

如何在Ubuntu安装MeeGo开发环境SDK

大家刚开始接触meego的 时候会可能会感到有些陌生不过,当你熟悉了这个系统以后你就会深深的爱上他,从来没有见过一个系统可以有这么大的吸引力,也许是因为它是一个不断发展着的系统,最重要的是它是一个开放的系统,对于喜欢开放系统的同学来说,linux肯定是大家都在用的系统,网上有很多在windows上安装比较简单,下面介绍如何在Ubuntu linux上面安装MeeGo的开发环境。


硬件要求,一般的电脑都可以,安装上linux,推荐ubuntu—我的最爱


软件要求, 这里只介绍在ubuntu上面安装MeeGo开发环境,其他系统安装MeeGo开发环境请大家找其他资料


所有你需要有ubuntu 9.10, 10.04, 10.10当中的一个,不想在硬盘安装linux的可以用virtualbox在windows上面安装linux,具体问题可以跟贴问我,也可以采用wubi安装,这个是比较好的方法,而且和一


个独立的系统基本上是一样的,只不过硬盘的性能会稍微减弱,不过完全不影响我们的使用.大家有什么问


题可以发邮件给我


熟悉linux都知道shell,下面我用 “#” (没有引号)表示root权限的shell, 用 “$” 表示一般用户的shell,


在ubuntu下面开启终端,你可以选择登录界面,鼠标就可以点哦,熟悉shell的可以使用命令启动,这里就不再介绍了


好了,下面开始一步一步的安装MeeGo开发环境。


[准备条件]


1.我下载的系统是ubuntu 10.04 32位的一直没有更新,不过不太影响安装,官方最新的SDK只支持到


10.04,所有我们用10.04的SDK, 你可以把源直接添加到/etc/apt/sources.list里面去,必须用root打


开,你可以用gedit或者vi,下面是我已经


加到我本机的/etc/apt/sources.list里面后的结果。


root@meegozu:/opt/meego# grep “meego” /etc/apt/sources.list


deb http://repo.meego.com/MeeGo/sdk/host/repos/ubuntu/10.04/ /


复制代码


2.添加meego工具库的gpg密钥(必须的,不然没有权限下载SDK),这里是用的一般用户。


aries@meegozu:/opt/meego$ gpg –keyserver pgpkeys.mit.edu –recv 0BC7BEC479FC1F8A


gpg: 下载密钥‘79FC1F8A’,从 hkp 服务器 pgpkeys.mit.edu


gpg: 密钥 79FC1F8A:公钥“Moblin Build (Moblin Build User) ”已导入


gpg: 合计被处理的数量:1


gpg: 已导入:1


u@zhai.me:/opt/meego$ gpg –export –armor 0BC7BEC479FC1F8A | sudo apt-key add –


[sudo] password for u:


OK


复制代码


如果输出类似上面的东东,那就ok了。


3.更新你本机的软件库列表(如果看到类似”命中 http://repo.meego.com Release.gpg”的,那就ok了,


下面是一大堆输出)


u@zhai.me:/opt/meego$ sudo apt-get update


命中 http://cn.archive.ubuntu.com maverick Release.gpg


忽略 http://cn.archive.ubuntu.com/ubuntu/ maverick/main Translation-en


忽略 http://cn.archive.ubuntu.com/ubuntu/ maverick/main Translation-zh


命中 http://cn.archive.ubuntu.com/ubuntu/ maverick/main Translation-zh_CN


……


命中 http://repo.meego.com Release.gpg


……


复制代码


4. 查看MeeGo的软件库是不是成功添加到本机软件列表了(注意,我这里查询的结果是已经安装的,因为


我以前安装过,你查询到的结果可能是没有安装的哟)


u@zhai.me:/opt/meego$ apt-cache policy madde


madde:


已安装: 0.7.53-6


候选软件包:0.7.53-6


版本列表:


*** 0.7.53-6 0


500 http://repo.meego.com/MeeGo/sdk/host/repos/ubuntu/10.04/ Packages


100 /var/lib/dpkg/status


复制代码


PS: 其实”madde”就是maemo的开发工具。


[开始安装]


1. 安装meego-sdk(主要是Qt的一系列东西), 网络慢的兄弟要注意了,这个需要下载一会儿的哟,(由于我是已经安装过了,所以


我输入”sudo apt-get install meego-sdk”后提示已经安装好了。


u@zhai.me:/opt/meego$ sudo apt-get install meego-sdk


正在读取软件包列表… 完成


正在分析软件包的依赖关系树


正在读取状态信息… 完成


meego-sdk 已经是最新的版本了。


升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。


复制代码


2.安装好SDK后,我们需要安装MeeGo的工具链和函数库了,现在有以下有3类工具链和函数库(比如gcc,


gdb, ld, libc, libstdc++等一些东东):


* meego-core-armv7l-1.1: 用来编译基于ARM CPU的智能手机的程序 (比如Nokia的N900)


* meego-handset-ia32-1.1: 用来编译基于Intel x86 CPU的智能手机的程序 (比如Aava)


* meego-netbook-ia32-1.1: 用来编译给予Intel x86 CPU的上网本的程序。


比如我要安装一个IA32 MeeGo上网本的工具链,可以使用如下命令(命令成功后会显示正在下载的界面(267M,我的天,要下载1个小时)):


u@zhai.me:/opt/meego$ sudo mad-admin create -f meego-netbook-ia32-1.1


% Total % Received % Xferd Average Speed Time Time Time Current


Dload Upload Total Spent Left Speed


1 267M 1 4056k 0 0 69262 0 1:07:22 0:00:59 1:06:23 67207


复制代码


如果你已经安装过MeeGo系统,那么可能会出现以下显示:


u@zhai.me:/opt/meego$ sudo mad-admin create -f meego-core-armv7l-1.1


Target ‘meego-core-armv7l-1.1’ already exists.


In case of premature ‘meego-core-armv7l-1.1’ installation enter


‘mad-admin remove meego-core-armv7l-1.1’ to clear the problem.


复制代码


你就等他漫漫下把


3. 检查是否下载安装成功.


创建一个名为针对armv7l指令集的qthello的项目:


u@zhai.me:/opt/meego$ mad -t meego-core-armv7l-1.1 pscreate -t qt-simple qthello


Skeleton ‘qthello’, type=qtprog created.


复制代码


进入项目目录:


u@zhai.me:/opt/meego$ cd qthello/


复制代码


使用qmake生成makefile:


aries@meegozu:/opt/meego/qthello$ mad -t meego-core-armv7l-1.1 qmake


-unix is deprecated.


复制代码


调用make编译qthello, 注意这里mad指定又指定了一次CPU的架构:


u@zhai.me:/opt/meego/qthello$ mad -t meego-core-armv7l-1.1 make


g++ -c -pipe -g -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector -fno-omit-frame-pointer –param=ssp-buffer-size=4 -fmessage-length=0 -march=armv7-a -mtune=cortex-a8 -mlittle-endian -mfpu=vfpv3 -mfloat-abi=softfp -D__SOFTFP__ -Wall -W -D_REENTRANT -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/lib/madde/linux-x86_64/sysroots/meego-core-armv7l-madde-sysroot-1.1-fs/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/lib/madde/linux-x86_64/sysroots/meego-core-armv7l-madde-sysroot-1.1-fs/usr/include/qt4/QtCore -I/usr/lib/madde/linux-x86_64/sysroots/meego-core-armv7l-madde-sysroot-1.1-fs/usr/include/qt4/QtGui -I/usr/lib/madde/linux-x86_64/sysroots/meego-core-armv7l-madde-sysroot-1.1-fs/usr/include/qt4 -Ibuild -o build/qtmain.o src/qtmain.cpp


g++ -o build/qthello build/qtmain.o -L/usr/lib/madde/linux-x86_64/sysroots/meego-core-armv7l-madde-sysroot-1.1-fs/usr/lib -lQtGui -lQtCore -lpthread


复制代码


最后用”file”命令看看是否正确生成了可执行文件,如果输出类似下面的输出,那恭喜你,你成功了,这里


输出的是ARM平台的qthello, 你无法在你自己机器上面运行,必须拷贝到你的模拟器或者是ARM CPU的真机


上面运行,比如N900.


u@zhai.me:/opt/meego/qthello$ file build/qthello


build/qthello: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.25, not stripped


复制代码


[在qemu(虚拟机)上安装MeeGo系统] 可选,如果你没有可以安装MeeGo的硬件,那你必须安装这个哟。


1. 首先用mad-admin查询下有哪些东西是可以安装的:


u@zhai.me:/opt/meego$ mad-admin list runtimes


qemu-n900-pr12 (installable)


rx48-diablo (installable)


meego-handset-ia32-qemu-1.1.20101031.2201-sda-runtime (installable)


meego-netbook-ia32-qemu-1.1.20101031.2037-sda-runtime (installable)


复制代码


2. 安装我们查询到的系统,(PS: 我不知道diablo是什么东东),这里我们安装Intel(ia32)的的上网本


系统,笔记本啊,无语啊哈哈


u@zhai.me:/opt/meego$ sudo mad-admin create -f -e meego-netbook-ia32-qemu-1.1.20101031.2037-sda-runtime


[sudo] password for aries:


% Total % Received % Xferd Average Speed Time Time Time Current


Dload Upload Total Spent Left Speed


0 458M 0 701k 0 0 16351 0 8:09:38 0:00:43 8:08:55 12759


复制代码


这是考验网速的时候了…慢慢等


因为下载需要很久的原因,我使用我原有的Maemo系统模拟器给大家展示以下如何启动qemu以及启动后的


效果(你在qemu中启动刚才我们安装好的meego上网本系统只需要使用”mad remote -r meego-netbook-ia32-qemu-1.1.20101031.2037-sda-runtime poweron”命令:


u@zhai.me:/opt/NokiaQtSDK$ ./Maemo/4.6.2/bin/mad remote -r qemu-n900-pr13 poweron


Starting QEMU runtime qemu-n900-pr13


This may take some time …


复制代码


下面是Maemo 5在N900上面启动的效果(qemu):


如果使用qemu遇到问题,主要是OpenGL的问题(我现在这个maemo 5的模拟器就没有OpenGL加速,很慢的)


,那你运行qemu的时候可以加上


QEMU_NOGRAPHIC=yes


复制代码


环境变量,这样就可以运行无OpenGL加速的qemu版本,比如:


u@zhai.me:/opt/meego$ QEMU_NOGRAPHIC=yes mad remote -r meego-netbook-ia32-qemu-1.1.20101031.2037-sda-runtime poweron


复制代码


使用ssh登入qemu中的meego系统(可以使用”meego”和”root”用户,密码都是”meego”:


u@zhai.me:/opt/meego$ ssh meego@127.0.0.1 -p 6666


复制代码


因为我的meego系统还没有安装好,所有我登录我的maemo系统,如下:


u@zhai.me:/opt/NokiaQtSDK$ ssh developer@127.0.0.1 -p 6666


BusyBox v1.10.2 (Debian 3:1.10.2.legal-1osso30+0m5) built-in shell (ash)


Enter ‘help’ for a list of built-in commands.


/home/developer $ uname -a


Linux Nokia-N900 2.6.28-omap1 #1 PREEMPT Fri Aug 6 11:50:00 EEST 2010 armv7l unknown


复制代码


Ok,成功了。


今天就说到这里,明天再介绍如何在qtcreator中整合使用这些工具来开发应用程序。


不能启动qemu的童鞋们看这里:


如果你的电脑是AMD的cpu,而且报以下错误的话:


Could not access KVM kernel module: No such file or directory


failed to initialize KVM


解决方法就是安装qemu的内核模块,然后加载kvm,并且在bios开启VT支持:


1.sudo apt-get install qemu-kvm


sudo modprobe kvm


2.重启电脑,进入bios界面,设置advance选项里面的virtualization标签为Enabled,保存退出


3.开机后,通过命令 lsmod | grep kvm,如果出现以下内容,说明kvm加载成功了


kvm_amd 29264 0


kvm 244765 1 kvm_amd


4.重新开启模拟器就OK


作者:侯业伟houyewei@gmail.com

赞(0) 打赏
转载请注明出处:服务器评测 » 如何在Ubuntu安装MeeGo开发环境SDK
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏