(Created page with "Category:devguide Category:meego-1.1 Category:tutorial Category:application-developer Category:linux This page describes how to install and configure the MeeG…") |
(→安装MeeGo目标机交叉编译环境) |
||
| (8 intermediate revisions not shown) | |||
| Line 4: | Line 4: | ||
[[Category:application-developer]] | [[Category:application-developer]] | ||
[[Category:linux]] | [[Category:linux]] | ||
| - | |||
本文介绍如何在Linux系统中安装和配置MeeGo 1.1 SDK。 | 本文介绍如何在Linux系统中安装和配置MeeGo 1.1 SDK。 | ||
| Line 14: | Line 13: | ||
* '''命令:''' 本文给出的命令例子都会以"$"指示."$"不是命令的一部分,在终端输入命令时请不要输入字符"$". | * '''命令:''' 本文给出的命令例子都会以"$"指示."$"不是命令的一部分,在终端输入命令时请不要输入字符"$". | ||
| - | == | + | == 为你的发行版配置软件库安装源 == |
| - | === | + | === 针对Ubuntu或Debian平台 === |
<!-- Replaced '#' with <li> so that multi-line <pre> statements would appear in a single block --> | <!-- Replaced '#' with <li> so that multi-line <pre> statements would appear in a single block --> | ||
<ol> | <ol> | ||
| - | <li> | + | <li>将下面文本行加入到<code>/etc/apt/sources.list.d/meego-sdk.list</code>中.<br> |
| - | + | 根据你的操作系统和版本,将${distribution}/${version}替换成以下字串: "debian/5.0", "ubuntu/09.10", "ubuntu/10.04" or "ubuntu/10.10". | |
<pre>deb http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/ / </pre> | <pre>deb http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/ / </pre> | ||
</li> | </li> | ||
| - | <li> | + | <li>为软件仓库增加公钥: |
<pre>$ gpg --keyserver pgpkeys.mit.edu --recv 0BC7BEC479FC1F8A | <pre>$ gpg --keyserver pgpkeys.mit.edu --recv 0BC7BEC479FC1F8A | ||
$ gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add -</pre> | $ gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add -</pre> | ||
</li> | </li> | ||
| - | <li> | + | <li>更新软件源: |
<pre>$ sudo apt-get update</pre> | <pre>$ sudo apt-get update</pre> | ||
</li> | </li> | ||
| - | <li> | + | <li>如想测试软件源是否正确被添加, 请运行以下命令测试. 正常的情况会在屏幕上打印出MADDE包的详细信息. |
<pre>$ apt-cache policy madde</pre> | <pre>$ apt-cache policy madde</pre> | ||
</li> | </li> | ||
</ol> | </ol> | ||
| - | === | + | === 针对Fedora平台 === |
<ol> | <ol> | ||
| - | <li> | + | <li>进入yum软件源配置目录: |
<pre>$ cd /etc/yum.repos.d/ </pre> | <pre>$ cd /etc/yum.repos.d/ </pre> | ||
</li> | </li> | ||
| - | <li> | + | <li>增加MeeGo SDK的yum软件源. <br/> |
| - | + | 根据你的Fedora版本将下面命令中的${distribution}/${version}替换成相应的: "fedora/12" 或 "fedora/13". | |
<pre>$ sudo wget http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/meego-sdk.repo</pre> | <pre>$ sudo wget http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/meego-sdk.repo</pre> | ||
</li> | </li> | ||
| - | <li> | + | <li>安装签名公钥: |
<pre>$ sudo rpm --import http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/repodata/repomd.xml.key </pre> | <pre>$ sudo rpm --import http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/repodata/repomd.xml.key </pre> | ||
</li> | </li> | ||
| - | <li> | + | <li>更新软件包数据库: |
<pre>$ sudo yum update</pre> | <pre>$ sudo yum update</pre> | ||
</li> | </li> | ||
</ol> | </ol> | ||
| - | === | + | === 针对MeeGo平台 === |
<ul> | <ul> | ||
<li>To add the MeeGo SDK repository on a system running MeeGo, run the following command. <br> | <li>To add the MeeGo SDK repository on a system running MeeGo, run the following command. <br> | ||
| Line 61: | Line 60: | ||
</li> | </li> | ||
</ul> | </ul> | ||
| - | === | + | === 针对openSUSE平台 === |
<ul> | <ul> | ||
<li>To add the MeeGo repository, run the following command. <br> | <li>To add the MeeGo repository, run the following command. <br> | ||
| Line 69: | Line 68: | ||
</ul> | </ul> | ||
| - | == | + | == 安装 MeeGo SDK == |
<ul> | <ul> | ||
<li>Debian / Ubuntu | <li>Debian / Ubuntu | ||
| Line 82: | Line 81: | ||
</ul> | </ul> | ||
| - | ''' | + | '''只装ARM版本的:''' |
<ul> | <ul> | ||
<li>Debian / Ubuntu | <li>Debian / Ubuntu | ||
| Line 95: | Line 94: | ||
</ul> | </ul> | ||
| - | ''' | + | '''只装IA32版本的:'''http://wiki.meego.com/SDK/Docs/1.1/Configuring_QEMU_runtimes |
<ul> | <ul> | ||
<li>Debian / Ubuntu | <li>Debian / Ubuntu | ||
| Line 108: | Line 107: | ||
</ul> | </ul> | ||
| - | == | + | == 安装MeeGo目标机交叉编译环境(Target) == |
| - | + | 所谓 ''目标机交叉编译环境''是用于编译MeeGo程序所需要的交叉编译工具和开发库(sysroot). 下载下来后是一个很大的(大约250MB).bz2格式的文件. MADDE (MeeGo应用开发和调试环境的缩写,([http://wiki.maemo.org/MADDE background])) 是一个用于帮助下载和安装目标交叉编译环境的工具集。"mad-admin"是MADDE的一个命令行工具. 你可以安装多个目标机交叉编译环境(比如针对arm的和针对x86的)并在Qt Creator中切换它们(会在后头介绍). | |
<ol> | <ol> | ||
| - | <li> | + | <li>使用MADDE创建一个 MeeGo 目标机交叉编译环境(target) <br> |
| - | + | 执行下面的命令. 把 <target> 替换为一下之一: | |
| - | * '''meego-core-armv7l-1.1.2''': | + | * '''meego-core-armv7l-1.1.2''': 用来创建 ARM平台 手持设备的应用 (比如 N900) |
| - | * '''meego-handset-ia32-1.1.2''': | + | * '''meego-handset-ia32-1.1.2''': 用来创建 x86平台 手持设备的应用 (比如 Aava) |
| - | * '''meego-netbook-ia32-1.1.2''': | + | * '''meego-netbook-ia32-1.1.2''': 用来创建 x86平台 上网本的应用. |
| - | + | 注意 <code>-f</code> 标识 是用来告知 MADDE 首先下载目标机交叉编译环境(Target)的 tarball (bz2)文件 . | |
<pre>$ sudo mad-admin create -f <target> </pre> | <pre>$ sudo mad-admin create -f <target> </pre> | ||
| - | + | 如果你遇到了麻烦, 查看如下链接 [http://wiki.meego.com/MeeGo_SDK_Troubleshooting#General_SDK_Errors Troubleshooting page] | |
</li> | </li> | ||
| - | <li> | + | <li>如果要检查你的目标机交叉编译环境是否已经正确安装, 运行如下命令. <br> |
| - | + | 替换 <target> 为上一步你所安装的目标机交叉编译环境的名称。 | |
<pre>$ mad -t <target> pscreate -t qt-simple qthello | <pre>$ mad -t <target> pscreate -t qt-simple qthello | ||
$ cd qthello | $ cd qthello | ||
| Line 128: | Line 127: | ||
$ mad -t <target> make | $ mad -t <target> make | ||
</pre> | </pre> | ||
| - | + | 注意: 运行 qmake 会显示 "-unix is deprecated" 这并非是编译错误. 目前你可以忽略它. | |
</li> | </li> | ||
| - | <li> | + | <li>如果要检查你的 qt-simple 是否已经为目标机交叉编译环境正确地创建, 运行: |
<pre>$ file build/qthello</pre> | <pre>$ file build/qthello</pre> | ||
</li> | </li> | ||
</ol> | </ol> | ||
| - | == | + | == 安装MeeGo运行时环境 == |
| - | + | ''运行时环境''指的是在主机系统上调试应用时运行在QEMU中的MeeGo操作系统映像.如果你是在硬件设备上直接调试你的应用,那么你无需安装MeeGo运行时环境。它是一个可通过MADDE下载的.bz文件,大小约为650MB 。在你开始配置Qt Creator之前,运行时环境不会被用到。然而,鉴于下载这个文件得多花点时间,所以还是建议你在开始下面的步骤之前就开始在后台下载安装运行时环境。 | |
| - | + | 可参考 [http://wiki.meego.com/SDK/Docs/1.1/Configuring_QEMU_runtimes 下载运行时环境和使用QEMU] | |
== Configuring Qt Creator to use the MeeGo toolchain(s) == | == Configuring Qt Creator to use the MeeGo toolchain(s) == | ||
| Line 166: | Line 165: | ||
$ sudo apt-get install g++ | $ sudo apt-get install g++ | ||
| - | == | + | == 使用SDK进行开发 == |
| - | + | 如果你刚刚接触MeeGo SDK,那么[[SDK/Docs/1.1/Creating_Hello_World|hello world 开发指南]] 是一个不错的起步教程. | |
| - | + | 该指南涵盖了如何创建一个工程,并进行打包和部署到设备上的各个方面的知识。(这里提到的设备包括真实的设备或者是QEMU运行环境中的一个虚拟设备). | |
| - | == | + | == 删除/卸载 == |
| - | + | 觉得MeeGo SDK没什么好玩的,你可以按如下方法删除或卸载安装的内容。 | |
| - | + | === 针对Ubuntu平台 === | |
| + | |||
| + | 要删除已安装的软件包,请运行: | ||
$ sudo apt-get remove --purge meego-sdk-qtcreator madde qt-tools arm-2009q1 qemu-arm qemu-gl meego-sdk-i586-toolchain meego-qemu meego-sdk-qt | $ sudo apt-get remove --purge meego-sdk-qtcreator madde qt-tools arm-2009q1 qemu-arm qemu-gl meego-sdk-i586-toolchain meego-qemu meego-sdk-qt | ||
| - | + | 要删除安装这些包时安装的依赖包,请运行: | |
$ sudo apt-get autoremove | $ sudo apt-get autoremove | ||
| - | + | 要删除整个MADDE目录(在卸载"madde"包的时候,该目录不会被完全删除),请运行: | |
$ sudo rm -rf /usr/lib/madde | $ sudo rm -rf /usr/lib/madde | ||
| Line 188: | Line 189: | ||
$ sudo apt-get clean | $ sudo apt-get clean | ||
| - | === | + | === 针对Fedora平台 === |
| - | + | 要删除已安装的软件包,请运行: | |
$ sudo yum remove meego-sdk-qt-creator madde qt-tools arm-2009q1 qemu-arm qemu-gl meego-sdk-i586-toolchain meego-qemu | $ sudo yum remove meego-sdk-qt-creator madde qt-tools arm-2009q1 qemu-arm qemu-gl meego-sdk-i586-toolchain meego-qemu | ||
| - | + | 要删除整个MADDE目录: | |
$ sudo rm -rf /usr/lib/madde | $ sudo rm -rf /usr/lib/madde | ||
| - | === | + | === 针对openSUSE平台 === |
| - | + | 要删除已安装的软件包,请运行: | |
$ sudo zypper remove -u meego-sdk-qt-creator madde qt-tools arm-2009q1 qemu-arm qemu-gl meego-sdk-i586-toolchain meego-qemu | $ sudo zypper remove -u meego-sdk-qt-creator madde qt-tools arm-2009q1 qemu-arm qemu-gl meego-sdk-i586-toolchain meego-qemu | ||
| - | + | 要删除整个MADDE目录: | |
$ sudo rm -rf /usr/lib/madde | $ sudo rm -rf /usr/lib/madde | ||
本文介绍如何在Linux系统中安装和配置MeeGo 1.1 SDK。
Contents |
/etc/apt/sources.list.d/meego-sdk.list中.deb http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/ /
$ gpg --keyserver pgpkeys.mit.edu --recv 0BC7BEC479FC1F8A $ gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add -
$ sudo apt-get update
$ apt-cache policy madde
$ cd /etc/yum.repos.d/
$ sudo wget http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/meego-sdk.repo
$ sudo rpm --import http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/repodata/repomd.xml.key
$ sudo yum update
$ sudo zypper addrepo -f http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/meego-sdk.repo
$ sudo zypper addrepo -f http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/meego-sdk.repo
$ sudo apt-get install meego-sdk
$ sudo yum install meego-sdk
$ sudo zypper install meego-sdk
只装ARM版本的:
$ sudo apt-get install meego-sdk-armv7l
$ sudo yum install meego-sdk-armv7l
$ sudo zypper install meego-sdk-armv7l
只装IA32版本的:http://wiki.meego.com/SDK/Docs/1.1/Configuring_QEMU_runtimes
$ sudo apt-get install meego-sdk-ia32
$ sudo yum install meego-sdk-ia32
$ sudo zypper install meego-sdk-ia32
所谓 目标机交叉编译环境是用于编译MeeGo程序所需要的交叉编译工具和开发库(sysroot). 下载下来后是一个很大的(大约250MB).bz2格式的文件. MADDE (MeeGo应用开发和调试环境的缩写,(background)) 是一个用于帮助下载和安装目标交叉编译环境的工具集。"mad-admin"是MADDE的一个命令行工具. 你可以安装多个目标机交叉编译环境(比如针对arm的和针对x86的)并在Qt Creator中切换它们(会在后头介绍).
-f 标识 是用来告知 MADDE 首先下载目标机交叉编译环境(Target)的 tarball (bz2)文件 .
$ sudo mad-admin create -f <target>
如果你遇到了麻烦, 查看如下链接 Troubleshooting page
$ mad -t <target> pscreate -t qt-simple qthello $ cd qthello $ mad -t <target> qmake $ mad -t <target> make
注意: 运行 qmake 会显示 "-unix is deprecated" 这并非是编译错误. 目前你可以忽略它.
$ file build/qthello
运行时环境指的是在主机系统上调试应用时运行在QEMU中的MeeGo操作系统映像.如果你是在硬件设备上直接调试你的应用,那么你无需安装MeeGo运行时环境。它是一个可通过MADDE下载的.bz文件,大小约为650MB 。在你开始配置Qt Creator之前,运行时环境不会被用到。然而,鉴于下载这个文件得多花点时间,所以还是建议你在开始下面的步骤之前就开始在后台下载安装运行时环境。
可参考 下载运行时环境和使用QEMU
Start Qt Creator by selecting Applications > Programming > Qt Creator.
Configure Qt Creator to use the MeeGo toolchain(s):
usr/lib/madde/linux-i686/targets/<target>/bin/qmake.
It is also possible to use Qt Creator without a MeeGo toolchain. This option can be useful if you don't need to cross-compile your software: for example, if you are doing QML development with no use of C++.
The steps are the same as above, but the qmake location is set to the qmake installed with the meego-sdk-qt libraries. The usual location for this on Linux is:
/opt/meego/meego-sdk-qt/bin/qmake
Note: On Ubuntu 10.10, you may need to install g++ in order for this step to work. If necessary, do this:
$ sudo apt-get install g++
如果你刚刚接触MeeGo SDK,那么hello world 开发指南 是一个不错的起步教程.
该指南涵盖了如何创建一个工程,并进行打包和部署到设备上的各个方面的知识。(这里提到的设备包括真实的设备或者是QEMU运行环境中的一个虚拟设备).
觉得MeeGo SDK没什么好玩的,你可以按如下方法删除或卸载安装的内容。
要删除已安装的软件包,请运行:
$ sudo apt-get remove --purge meego-sdk-qtcreator madde qt-tools arm-2009q1 qemu-arm qemu-gl meego-sdk-i586-toolchain meego-qemu meego-sdk-qt
要删除安装这些包时安装的依赖包,请运行:
$ sudo apt-get autoremove
要删除整个MADDE目录(在卸载"madde"包的时候,该目录不会被完全删除),请运行:
$ sudo rm -rf /usr/lib/madde
To remove the packages from your local repository (/var/cache/apt/archives/), run:
$ sudo apt-get clean
要删除已安装的软件包,请运行:
$ sudo yum remove meego-sdk-qt-creator madde qt-tools arm-2009q1 qemu-arm qemu-gl meego-sdk-i586-toolchain meego-qemu
要删除整个MADDE目录:
$ sudo rm -rf /usr/lib/madde
要删除已安装的软件包,请运行:
$ sudo zypper remove -u meego-sdk-qt-creator madde qt-tools arm-2009q1 qemu-arm qemu-gl meego-sdk-i586-toolchain meego-qemu
要删除整个MADDE目录:
$ sudo rm -rf /usr/lib/madde