视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
如何在Ubuntu安装MeeGo开发环境SDK
2025-09-28 02:24:43 责编:小OO
文档
如何在Ubuntu安装MeeGo开发环境SDK 

分类: MeeGo技术 2011-07-14 14:44 367人阅读 评论(3) 收藏 举报 

大家刚开始接触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_/sysroots/meego-core-armv7l-madde-sysroot-1.1-fs/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/lib/madde/linux-x86_/sysroots/meego-core-armv7l-madde-sysroot-1.1-fs/usr/include/qt4/QtCore -I/usr/lib/madde/linux-x86_/sysroots/meego-core-armv7l-madde-sysroot-1.1-fs/usr/include/qt4/QtGui -I/usr/lib/madde/linux-x86_/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_/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 292 0

kvm 244765 1 kvm_amd

4.重新开启模拟器就OK下载本文

显示全文
专题