Maemo 5 Final SDK 安装指南.docx
- 文档编号:9243407
- 上传时间:2023-05-17
- 格式:DOCX
- 页数:16
- 大小:22.82KB
Maemo 5 Final SDK 安装指南.docx
《Maemo 5 Final SDK 安装指南.docx》由会员分享,可在线阅读,更多相关《Maemo 5 Final SDK 安装指南.docx(16页珍藏版)》请在冰点文库上搜索。
Maemo5FinalSDK安装指南
介绍
本文是Documentation/Maemo5FinalSDKInstallation的简体中文翻译。
以下文档介绍了如何安装Maemo5FinalSDK。
MaemoSDK使用Scratchbox作为交叉编译环境,你还需要安装Maemo的开发文件。
在开始安装以前,先来看一下最小的系统需求。
官方支持基于Debian的x86-32Linux发行版,主要是Debian和Ubuntu。
但在其他Linux发行版上安装MaemoSDK也是可以做到的。
当你确定你的开发设备符合这些要求后,你可以按照以下指南操作。
Maemo5SDK配备了两个命令行安装脚本,以及一个附带图形界面的安装程序(仍是beta版本),以简化SDK的安装。
∙Scratchbox安装脚本将在你的机器上自动下载、安装指定版本的Scratchbox。
∙MaemoSDK安装脚本将在Scratchbox里设置两个编译目标(armel和x86),为这两个目标下载最基本的开发文件包rootstraps,并安装用户指定的开源开发工具。
∙图形界面的安装程序会同时安装Scratchbox和MaemoSDK。
Maemo5SDK通过一个需要认证的软件源,提供了开发者所需要的Nokia二进制开发文件包,以及附带的Nokia应用程序。
为了获取这些文件,你需要接受Nokia的最终用户许可协议。
为了获得MaemoSDK的完整功能,你需要这些开源工具包以外的Nokia二进制文件包。
[edit]MaemoSDK没有包含的内容
在你的主机上执行MaemoSDK程序需要Xephye这个X11服务器。
这个X11服务器提供了一个窗口,显示设备屏幕和用户界面,使得开发者可以在自己的主机上看到Maemo程序窗口和界面。
这个软件没有包含在MaemoSDK内,因为绝大多数Linux发行版都提供了这个软件。
如果你在基于Debian的Linux发行版上,通过图形界面的安装程序安装MaemoSDK,将为你提供安装Xephyr的选项。
如果不是,你可以采用以下的方式,手工安装Xephyr。
在基于Debian的Linux系统上,可以在Scratchbox环境外,以root权限,使用apt-get安装Xephyr。
$sudoapt-getinstallxserver-xephyr
在Gentoo系统上,你需要添加kdrive这个useflag,再编译xorg-server,以获得Xephye。
[Edit]通过图形界面的安装程序安装Maemo5SDK
现在,Maemo5SDK拥有了使用方便的图形界面安装方式。
这个安装程序可以在基于Debian的发行版上安装Scratchbox和Maemo5SDK。
同时,也可以处理这个页面提供的Nokia最终用户协议,并安装Nokia的二进制开发工具包和应用程序。
图形界面安装程序拥有以下功能。
∙安装/升级Scratchbox
∙安装Maemo5SDK
∙安装Nokia的二进制文件包
∙安装Nokia应用程序
∙安装Xephye
∙在桌面上创建Xephye启动器
∙在桌面上创建ScrachboxHome目录的快捷方式
∙在桌面上创建对开发者有用的Maemo5信息页
图形界面安装程序提供了标准安装和自定义安装两种选择。
标准安装使用默认设置,而自定义安装提供了更多的选择。
需要注意的是,如果存在FREMANTLE_X86和FREMANTLE_ARMEL的编译目标,标准安装将会覆盖这两个目标,不过Scratchbox的home目录将会被保留。
如果你不想覆盖这两个编译目标,请使用自定义安装。
安装程序是一个pythonQt程序,需要pyQt的支持。
如果你的系统没有安装这些软件包,安装程序可以安装他们。
如果有需要,安装程序可以使用http代理。
如果你的网络连接没有正常工作,安装程序将请求你手工设置代理。
安装程序在UbuntuKarmic和DebianLenny上经受了测试,32位和64位版本都可以正常使用。
安装程序需要下载MaemoSDK,因此你需要一个可用的互联网连接。
开始安装
如果你要在一个非Debian系统上执行安装脚本,可能会缺少一些python的设置,从而无法自动定位scratchbox的安装路径。
为了解决这个问题,你需要给这个脚本打一个补丁
以下是补丁文件。
129c129
--- >SB_PATH="/opt/scratchbox" 2297a2298 >opt=opt+"-s/opt/scratchbox" 2351a2353 >cmd=cmd+"-s/opt/scratchbox" 另外,你也应该去除安装Xephyr的选项,然后手工安装它。 使用wget下载安装程序。 $wgethttp: //repository.maemo.org/stable/5.0/maemo-sdk-install-wizard_5.0.py 为安装程序添加可执行权限 $chmoda+xmaemo-sdk-install-wizard_5.0.py 安装需要root权限。 Ubuntu $sudo./maemo-sdk-install-wizard_5.0.py Debian $su-c./maemo-sdk-install-wizard_5.0.py 注意: ∙因为安装程序需要进行软件包安装,你应该在安装前,先退出其他的包管理程序。 ∙需要注意的是,Scratchbox的路径检测并不完美,你必须将它安装在/scratchbox目录下。 ∙另外,安装程序需要pyQt的支持,老版本的Ubuntu和Debian可能没有提供pyQt。 ∙在64位系统上,安装程序将显示需要做哪些设置,但不会自动进行配置,你需要手工配置它们。 ∙安装程序会将DISPLAY环境变量设置为": 2",如果你想使用其他值,请手工更改。 [Edit]在基于Debian的X86-32Linux发行版上安装Maemo5SDK 1.下载Scratchbox和MaemoSDK的安装脚本。 你也可以在Nokia开发论坛(MaemoSDKatForumNokia)上下载到同样的脚本。 $wgethttp: //repository.maemo.org/stable/5.0/maemo-scratchbox-install_5.0.shhttp: //repository.maemo.org/stable/5.0/maemo-sdk-install_5.0.sh 2.为脚本添加可执行权限。 $chmoda+x./maemo-scratchbox-install_5.0.sh./maemo-sdk-install_5.0.sh 3.以root权限运行Scratchbox安装脚本,同时指定需要添加到Scratchbox用户组的用户。 该用户必须是宿主Linux系统中有效的用户。 这将下载大约420MB的内容,不支持断点续传。 $sudo./maemo-scratchbox-install_5.0.sh-uUSER 4.安装脚本将会在“sbox”用户组中添加指定的用户。 要使改设置在当前终端进程中生效,你需要执行以下命令。 ∙注意: 如果你已经登录进了Scratchbox环境,这个命令将改变当前的用户组ID。 如果你不想改变,只要从Scratchbox环境中注销再重新登录即可。 $newgrpsbox 5.这时,你已经获得了一个可用的Scratchbox环境。 6.继续进行MaemoSDK的安装。 这个脚本需要在Scratchbox环境外,以安装时指定的用户权限运行。 首先,为脚本用户添加可执行权限。 $sudochmod+x./maemo-sdk-install_5.0.sh 然后运行。 $./maemo-sdk-install_5.0.sh 如果你将Scratchbox安装到了/scratchbox以外的目录,你需要用“-sPATH”选项来指定你的Scratchbox目录。 你可以使用“--help”选项获得更多的命令行选项信息。 7.脚本成功执行完成后,你就可以登录Scratchbox环境了。 $/scratchbox/login 如果你无法登录,请看一下Scratchbox的问题。 8.你需要接受Nokia的最终用户许可协议,才能够获取Nokia提供的二进制软件包。 安装这些软件包后,你将会获得MaemoSDK的完整功能。 8.1.通过这个页面,接受最终用户许可协议。 8.2.将接受最终用户许可协议后获得的软件源地址,分别添加到x86和armel两个编译目标环境的/etc/apt/source.list文件中。 在两个目标环境下,分别执行以下命令。 [sbox-FREMANTLE_X86: ~]>sb-confselectFREMANTLE_ARMEL [sbox-FREMANTLE_ARMEL: ~]>nano/etc/apt/sources.list#添加软件源地址 [sbox-FREMANTLE_ARMEL: ~]>apt-getupdate [sbox-FREMANTLE_ARMEL: ~]>fakerootapt-getinstallnokia-binariesnokia-apps [sbox-FREMANTLE_ARMEL: ~]>sb-confselectFREMANTLE_X86 [sbox-FREMANTLE_X86: ~]>nano/etc/apt/sources.list#添加软件源地址 [sbox-FREMANTLE_X86: ~]>apt-getupdate [sbox-FREMANTLE_X86: ~]>fakerootapt-getinstallnokia-binariesnokia-apps 以上步骤将安装Nokia的二进制文件包,一些开源工具包依赖它们。 这样,你就完成了Maemo5SDK开发环境的配置,可以动手进行开发了。 [Edit]在OpenSUSE上安装Maemo5SDK 这是来自opensuse.org的安装指南。 [Edit]启动/终止SDK图形用户界面 在启动用户界面前,请先确认你已正确安装了以下内容: ∙Scratchbox环境外,宿主系统上的XephyrX11服务器 ∙之前提到的SDK ∙Nokia二进制工具包 1.首先,在Scratchbox环境外,启动Xephyr: Xephyr : 2-host-cursor-screen800x480x16-dpi96-ac-kb& 2.登录Scratchbox的X86编译目标环境 $/scratchbox/login WelcometoScratchbox,thecross-compilationtoolkit! Use'sb-menu'tochangeyourcompilationtarget. See/scratchbox/doc/fordocumentation. [sbox-FREMANTLE_X86: ~]> 3.设置DISPLAY环境变量,使之与Xephyr的设置相符。 [sbox-FREMANTLE_X86: ~]>exportDISPLAY=: 2 4.启动用户界面。 [sbox-FREMANTLE_X86: ~]>af-sb-init.shstart 5.图形界面将出现在Xephyr窗口中。 6.你可以用如下命令终止用户界面: [sbox-FREMANTLE_X86: ~]>af-sb-init.shstop [Edit]在基于Debian的X86-32Linux发行版上安装Maemo5SDK 由于Scratchbox只支持x86-32架构的linux宿主系统,因此,在x86-64系统中,我们需要强制安装x86-32的Scratchbox软件包。 在执行Scratchbox的安装脚本时,添加“-F”选项即可。 安装流程 ∙下载Scratchbox和Maemo5SDK的安装脚本。 $wget-chttp: //repository.maemo.org/stable/5.0/maemo-scratchbox-install_5.0.shhttp: //repository.maemo.org/stable/5.0/maemo-sdk-install_5.0.sh ∙为脚本添加可执行权限 $chmoda+x./maemo-scratchbox-install_5.0.sh./maemo-sdk-install_5.0.sh ∙以root权限运行Scratchbox安装脚本,并添加“-F”选项,同时指定需要添加到Scratchbox用户组的用户。 该用户必须是宿主Linux系统中有效的用户。 $sudo./maemo-scratchbox-install_5.0.sh-F-u$USER 在成功安装Scratchbox后,请参照x86-32系统的安装指南,继续安装Maemo5FinalSDK。 [Edit]在非Debian系统中启动Scratchbox 如果通过Debian的deb包安装了Scratchbox,Scratchbox的启动脚本/etc/init.d/scratchbox-core将被正确安装,Scratchbox也会在系统重启时自动启动。 如果你通过tarballs的方式安装了Scratchbox,那么当系统重启后,Scratchbox需要的挂载配置和binfmt_misc都将被清除。 要使Scratchbox在重启后继续工作,你需要以root权限执行以下命令: $sudo/scratchbox/sbin/sbox_ctlstart 此外,你也可以将sbox_ctl作为一个系统脚本,添加到/etc/init.d目录下,并在对应的运行等级目录中创建链接。 在大多数系统中,方法如下: $ln-s/scratchbox/sbin/sbox_ctl/etc/init.d/scratchbox-core $/usr/sbin/update-rc.dscratchbox-coredefaults 请查阅你的系统文档,以了解相应的方法。 [Edit]自Maemo5Beta2SDK升级 不幸的是,从Beta2平滑地升级到FinalSDK是不可能的。 因此我们建议你重新安装FinalSDK。 在你操作以前,请先看一下下列指引。 一些随FinalSDK附带的Nokia应用程序使用了固定的路径,来指定用户的home目录。 为了使这些程序能够正常工作,你需要创建一个目录,路径与Nokia指定的路径相同。 这需要在Scratchbox环境外,以root权限操作。 Scratchbox安装脚本的“-u”选项将更新环境并创建必要的链接。 执行以下命令,为已有的Scratchbox用户创建必要的链接。 $sudo./maemo-scratchbox-install_5.0.sh-u 此外,你也可以手动创建链接。 如果Scratchbox被安装在了默认路径下,那么命令如下: $sudoln-s/scratchbox/users/ FinalSDK的安装脚本也在/target/ 为了便于在/opt路径下安装应用程序,一些linux系统会创建一个指向/home/opt的链接作为/opt目录。 SDK也继承了这一特性。 在Scratchbox环境下,/opt目录的路径是/target/ 安装基本系统包rootstraps后,所有编译目标环境的/target/ 而/opt应该为每个编译目标环境分别指定。 为了解决这个问题,我们需要手工检查/target/ [Edit]自Maemo4.X/DiabloSDK升级 事实上,由于API的变动,我们无法从Diablo升级到Fremantle。 不过我们可以利用Diablo的Scratchbox环境,帮助配置Fremantle的Scratchbox环境。 所以,我们可以升级Scratchbox。 ∙下载Maemo5的Scratchbox安装脚本 $chmoda+x./maemo-scratchbox-install_5.0.sh ∙为脚本添加可执行权限,然后这样执行: $sudo./maemo-scratchbox-install_5.0.sh-U-u 当脚本执行成功后,继续进行Maemo5FinalSDK的安装。 [Edit]手工安装 ∙在基于Debian的x86-32系统上: ∙你可以在你宿主机的/etc/apt/sources.list文件中,添加以下内容: debhttp: //scratchbox.org/debian/maemo5-sdkmain ∙然后以root权限,安装Scratchbox软件包。 $sudoapt-getupdate $sudoapt-getinstallscratchbox-corescratchbox-libsscratchbox-devkit-qemuscratchbox-devkit-debianscratchbox-devkit-doctoolsscratchbox-devkit-perlscratchbox-toolchain-host-gccscratchbox-toolchain-cs2007q3-glibc2.5-arm7scratchbox-toolchain-cs2007q3-glibc2.5-i486scratchbox-devkit-svnscratchbox-devkit-gitscratchbox-devkit-apt-https ∙在基于Debian的x86-64系统上: ∙从这里下载Scratchbox软件包。 ∙以root权限,强制安装这些x86-32软件包。 $sudodpkg-i--force-architecturescratchbox-corescratchbox-libsscratchbox-devkit-qemuscratchbox-devkit-debianscratchbox-devkit-doctoolsscratchbox-devkit-perlscratchbox-toolchain-host-gccscratchbox-toolchain-cs2007q3-glibc2.5-arm7scratchbox-toolchain-cs2007q3-glibc2.5-i486scratchbox-devkit-svnscratchbox-devkit-gitscratchbox-devkit-apt-https ∙Scratchbox软件包将被解包安装到/scratchbox目录下。 在安装过程中,会请求你回答一些关于用户组和用户的问题。 默认的Scratchbox用户组是“sbox”。 ∙使用Scratchbox的用户需要被添加到Scratchbox用户组中,以root权限执行下列命令以添加用户: $sudo/scratchbox/sbin/sbox_adduserUSERyes ∙这将在Scratchbox用户组中添加用户,创建用户目录/scratchbox/ ∙一些随FinalSDK附带的Nokia应用程序使用了固定的路径,来指定用户的home目录。 为了使这些程序能够正常工作,你需要创建一个目录,路径与Nokia指定的路径相同。 这需要在Scratchbox环境外,以root权限操作。 $sudoln-s/scratchbox/users/ ∙要使用户组设置在当前终端环境下生效,需要执行以下命令: ∙注意: 如果你已经登录进了Scratchbox环境,这个命令将改变当前的用户组ID。 如果你不想改变,只要从Scratchbox环境中注销再重新登录即可。 $newgrpsbox ∙登录Scratchbox环境。 $/scratchbox/login ∙配置x86和armel编译目标: [sbox->: ~]>sb-confstFREMANTLE_X86-ccs2007q3-glibc2.5-i486-dperl: debian-etch: doctools: svn: git-tnone [sbox->: ~]>sb-confstFREMANTLE_ARMEL-ccs2007q3-glibc2.5-arm7-dqemu: perl: debian-etch: doctools: svn: git-tqemu-arm-sb ∙下载基本系统包rootstraps。 [sbox->: ~]>wgethttp: //repository.maemo.org/stable/5.0/armel/maemo-sdk-rootstrap_5.0_armel.tgzhttp: //repository.maemo.org/stable/5.0/i386/maemo-sdk-rootstrap_5.0_i386.tgz ∙切换到x86目标环境,解开x86的rootstraps,安装devkits,fakeroot,以及其他工具到目标环境。 [sbox->: ~]>sb-confseFREMANTLE_X86 [sbox-FREMANTLE_X86: ~]>sb-confrsmaemo-sdk-rootstrap_5.0_i386.tgz ∙如果apt的apthttppipeline被配置为开启,一些用户可能会在使用apt下载文件时遇到问题。 你可以用以下命令关闭这个设置: [sbox-FREMANTLE_X86: ~]>echo'Acquire: : http: : Pipeline-Depth"0";'>>/etc/apt/apt.conf.d/00maemo ∙继续安装: [sbox-FREMANTLE_X86: ~]>sb-confin-edFL [sbox-FREMANTLE_X86: ~]>apt-getupdate [sbox-FREMANTLE_X86: ~]>fakerootapt-getinstallmaemo-sdk-
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Maemo Final SDK 安装指南 安装 指南