Editing Maemo 5 Final SDK 安装指南

Warning: You are not logged in. Your IP address will be recorded in this page's edit history.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
=介绍=
=介绍=
-
[[Category:Internationalization]]
+
 
-
[[Category:Documentation]]
+
本文是[[Documentation/Maemo 5 Final SDK Installation]]的简体中文翻译。
本文是[[Documentation/Maemo 5 Final SDK Installation]]的简体中文翻译。
Line 51: Line 50:
图形界面安装程序提供了标准安装和自定义安装两种选择。标准安装使用默认设置,而自定义安装提供了更多的选择。需要注意的是,如果存在 FREMANTLE_X86和FREMANTLE_ARMEL的编译目标,标准安装将会覆盖这两个目标,不过Scratchbox的home目录将会被保留。如果你不想覆盖这两个编译目标,请使用自定义安装。
图形界面安装程序提供了标准安装和自定义安装两种选择。标准安装使用默认设置,而自定义安装提供了更多的选择。需要注意的是,如果存在 FREMANTLE_X86和FREMANTLE_ARMEL的编译目标,标准安装将会覆盖这两个目标,不过Scratchbox的home目录将会被保留。如果你不想覆盖这两个编译目标,请使用自定义安装。
-
安装程序是一个python Qt程序,需要pyQt的支持。如果你的系统没有安装这些软件包,安装程序可以安装他们。
+
安装程序是一个Qt程序,需要Qt的python绑定的支持。如果你的系统没有安装这些软件包,安装程序可以安装他们。
如果有需要,安装程序可以使用http代理。如果你的网络连接没有正常工作,安装程序将请求你手工设置代理。
如果有需要,安装程序可以使用http代理。如果你的网络连接没有正常工作,安装程序将请求你手工设置代理。
-
安装程序在Ubuntu Karmic和Debian Lenny上经受了测试,32位和64位版本都可以正常使用。安装程序需要下载Maemo SDK,因此你需要一个可用的互联网连接。
+
安装程序在Ubuntu Karmic和Debian Lenny上经受了测试,32位和64位版本都可以正常使用。安装程序需要下载Maemo SDK,因此你需要一个可用的Internet连接。
'''开始安装'''
'''开始安装'''
Line 96: Line 95:
* 另外,安装程序需要pyQt的支持,老版本的Ubuntu和Debian可能没有提供pyQt。
* 另外,安装程序需要pyQt的支持,老版本的Ubuntu和Debian可能没有提供pyQt。
* 在64位系统上,安装程序将显示需要做哪些设置,但不会自动进行配置,你需要手工配置它们。
* 在64位系统上,安装程序将显示需要做哪些设置,但不会自动进行配置,你需要手工配置它们。
-
* 安装程序会将DISPLAY环境变量设置为":2",如果你想使用其他值, 请手工更改。
+
* 安装程序会DISPLAY环境变量设置为":2",如果你想使用其他值, 请手工更改。
=在基于Debian的x86-32 linux发行版上安装Maemo 5 SDK=
=在基于Debian的x86-32 linux发行版上安装Maemo 5 SDK=
Line 126: Line 125:
  $ /scratchbox/login
  $ /scratchbox/login
-
如果你无法登录,请看一下[[Maemo_5_Final_SDK_安装指南#Scratchbox的问题|Scratchbox的问题]]。
+
如果你无法登录,请看一下Scratchbox的限制。
8. 你需要接受Nokia的最终用户许可协议,才能够获取Nokia提供的二进制软件包。安装这些软件包后,你将会获得Maemo SDK的完整功能。
8. 你需要接受Nokia的最终用户许可协议,才能够获取Nokia提供的二进制软件包。安装这些软件包后,你将会获得Maemo SDK的完整功能。
Line 324: Line 323:
:* 虚拟包“maemo-sdk-debug”将为目标环境安装所有需要的开源运行库,开发文件和调试文件。如果你只需要运行库,你可以安装“maemo-sdk-runtime”包。如果你只需要运行库和开发文件,那么你应该安装“maemo-sdk-dev”包。
:* 虚拟包“maemo-sdk-debug”将为目标环境安装所有需要的开源运行库,开发文件和调试文件。如果你只需要运行库,你可以安装“maemo-sdk-runtime”包。如果你只需要运行库和开发文件,那么你应该安装“maemo-sdk-dev”包。
-
* 通过[http://tablets-dev.nokia.com/eula/index.php 这个页面],接受Nokia的最终用户许可协议。
+
* 通过[http://tablets-dev.nokia.com/eula/index.php 这个页面],接受最终用户许可协议。
* 将接受最终用户许可协议后获得的软件源地址,添加到目标环境的/etc/apt/source.list文件中。然后执行以下命令。
* 将接受最终用户许可协议后获得的软件源地址,添加到目标环境的/etc/apt/source.list文件中。然后执行以下命令。
Line 369: Line 368:
下面可以[[#启动/终止SDK图形用户界面|启动用户界面]]了
下面可以[[#启动/终止SDK图形用户界面|启动用户界面]]了
-
=卸载=
+
=施工中=
 +
[edit] Un-installation
-
首先,确认没有任何进程运行在Scratchbox环境中。
+
Make sure that you have no process running inside Scratchbox. Uninstalling Scratchbox will remove everything that is installed and saved inside Scratchbox. Please take a backup of your files from Scratchbox user home directory if needed.
-
请先备份你需要的文件和目录。卸载Scratchbox会删除所有Scratchbox环境中的所有东西。
+
-
在基于Debian的系统中,以root权限执行以下命令:
+
On Debian based systems, do the following with root permissions:
 +
$ sudo apt-get remove scratchbox-* --purge
 +
$ sudo rm -rf /scratchbox
-
$ sudo apt-get remove scratchbox-* --purge
 
-
$ sudo rm -rf /scratchbox
 
-
在非Debian的系统中,你需要手工停止Scratchbox进程,然后删除它:
+
On non-Debian based systems, you need to stop scratchbox as follows before removing it.
 +
$ sudo /scratchbox/sbin/sbox_ctl stop
 +
$ sudo rm -rf /scratchbox
-
$ sudo /scratchbox/sbin/sbox_ctl stop
 
-
$ sudo rm -rf /scratchbox
 
-
=Scratchbox的问题=
+
[edit] Limitations of Scratchbox
-
你需要注意以下这些Scratchbox的问题:
+
The following limitations have been noted in the usage of Scratchbox:
 +
[edit] VDSO support
-
==VDSO支持==
+
Scratchbox does not work when VDSO32 support is enabled in the host's kernel. We're working on making it possible, but at the moment there are some workarounds, which are presented here.
-
当宿主机内核开启了VDSO后,Scratchbox无法正常工作。我们正在努力解决这个问题。
+
If your host has VDSO32 turned on you will get an error like this when trying to login to Scratchbox.
-
 
+
No directory, logging in with HOME=/
-
如果你的宿主机开启了VDSO32,在登录Scratchbox时会出现这样的错误:
+
Inconsistency detected by ld.so: rtld.c: 1192: dl_main: Assertion `(void *)
-
 
+
-
No directory, logging in with HOME=/
+
-
Inconsistency detected by ld.so: rtld.c: 1192: dl_main: Assertion `(void *)
+
ph->p_vaddr == _rtld_local._dl_sysinfo_dso' failed!
ph->p_vaddr == _rtld_local._dl_sysinfo_dso' failed!
-
==x86-64内核==
+
[edit] x86-64 kernel
-
在2.6.25版本以后的x86-64内核中,默认启用了VDSO32。执行以下命令可以暂时禁用该特性:
+
x86-64 Linux kernels starting from version 2.6.25 enable VDSO32 by default. To temporarily disable VDSO32 execute
 +
sysctl abi.vsyscall32=0
-
sysctl abi.vsyscall32=0
+
[[Category:Internationalization]]
-
 
+
-
如果你的内核版本低于2.6.24,你可以执行:
+
-
sysctl vm.vdso_enabled=0
+
-
或者
+
-
sysctl kernel.vdso=0
+
-
sysctl可以配置VDSO32,只有0或2的取值与Scratchbox兼容。在我们的例子中使用0(禁用)。2将启用compat模式。
+
On Linux kernel 2.6.24 <= you can disable VDSO32 by executing
 +
sysctl vm.vdso_enabled=0
-
你也可以将以下内容添加到/etc/sysctl.conf文件中
+
or
 +
sysctl kernel.vdso=0
-
vm.vdso_enabled = 0
+
The current setting of VDSO32 can be verified by using sysctl. Only values 0 and 2 are compatible with Scratchbox. In our examples we use 0 (disable). 2 enables compat mode.
-
abi.vsyscall32 = 0
+
-
kernel.vdso = 0
+
-
保存并执行:
+
You can set all of these permanently by adding the following lines to /etc/sysctl.conf
 +
vm.vdso_enabled = 0
 +
abi.vsyscall32 = 0
 +
kernel.vdso = 0
-
$ sudo sysctl -p
+
Save the file and run the command:
 +
$ sudo sysctl -p
-
需要注意的是,这三行配置中,具体哪一行正确取决与你的Linux内核版本。当你执行“sysctl -p”时可能会出现“unknown keys”的警告。你可以忽略这些警告,三行配置中只有正确的那个会被启用。
+
Please note the correct line depends on your Linux kernel version. When you execute sysctl -p you may get a warning about unknown keys. You can safely ignore those warnings as long as one of the 3 settings works.
-
'''警告''':在把这些内容添加到sysctl.conf前,你应该尝试用echo配置他们,看看是否会引起一些特殊的问题。例如,在Ubuntu Gutsy中,曾经出现过VDSO的错误设置损害了系统,导致系统无法启动的情况。
+
WARNING : You should try setting these values by echoing them to the given locations before adding them to sysctl.conf to see if they cause any problems. For example, in some Ubuntu Gutsy installations, it has been observed that changing the VDSO settings will hang the system and thus making permanent changes in sysctl.conf may, in these cases, make your system unbootable.
-
'''WARNING''' : You should try setting these values by echoing them to the given locations before adding them to sysctl.conf to see if they cause any problems. For example, in some Ubuntu Gutsy installations, it has been observed that changing the VDSO settings will hang the system and thus making permanent changes in sysctl.conf may, in these cases, make your system unbootable.
 
-
(''译者:该警告我没有把握正确翻译,故而保留原文。'')
+
[edit] Known Issues in the SDK
-
=已知问题=
+
    * A list of issues and their solutions is http://wiki.maemo.org/Q%26A_-_SDK_and_Scratchbox
-
* 你可以在[[:Developer FAQ#Maemo SDK and Scratchbox|这里]]找到一份已知问题和解决办法的列表
+
    * Unnecessary warnings and debugging messages are printed out when the hildon application framework is started.
-
* 当用户界面启动时,会在终端显示一些不必要的警告和调试信息。
+
    * Armel target does not bring up the UI framework
-
* armel目标环境没有图形用户界面。
+
    * It has been noted that Xephyr dies with the application framework at times. The crash in question might even be Xephyr related since the application framework behaves differently with different versions/builds of Xephyr. The case seems to be worst on Xephyr that comes with Ubuntu Jaunty, there Xephyr will die when running any application that contains an input field and clicking on that field with a mouse to invoke the input method. On Fedora Code 10 the Xephyr does not mind the mouse clicks but dies when shutting down the application framework. On the other hand Xephyr on Ubuntu Intrepid or even the Intrepid version recompiled for Jaunty does not experience crashing in these situations.
-
* 当用户界面运行时,Xephye有可能僵死。这可能是Xephyr不同版本间的行为差异导致的界面问题。最糟糕的案例出现在Ubuntu Jaunty附带的Xephyr中。当用户界面中运行有输入区域的程序,并用鼠标点击切换输入法时,Xephyr都会僵死。在Fedora Core 10中,Xephyr会忽略鼠标的点击,但会在用户界面的程序退出时僵死。在其他Xephyr,例如Ubuntu Intrepid中的Xephyr,或是为Jaunty重编译的Intrepid版本Xephyr并没有出现这些冲突。
+
A patch is already available for the Xephyr on Ubuntu Jaunty and can be found at http://bugs.freedesktop.org/show_bug.cgi?id=21591. Binaries packages for xserver-xephyr package and its dependencies (libgpg-error0 and libcrypt11) can be download from Ubuntu Jaunty repositories.
-
**现在,已经有了一个为Ubuntu Jaunty的Xephyr提供的补丁,你可以在[http://bugs.freedesktop.org/show_bug.cgi?id=21591 这里]找到它。你也可以从Ubuntu Jaunty的launchpad源找到编译好的[http://launchpadlibrarian.net/30330126/xserver-xephyr_1.6.3-1ubuntu2_i386.deb 二进制包]以及它的依赖包([http://launchpadlibrarian.net/27533744/libgpg-error0_1.6-1ubuntu1_i386.deb libgpg-error0]和[http://launchpadlibrarian.net/28623981/libgcrypt11_1.4.4-2ubuntu2_i386.deb libcrypt11])
+
-
* clutter的性能可以通过硬件加速获得提升。有些时候,这意味着你需要安装一些受限的驱动(例如宿主机上的ATI和NVidia图形加速卡)。请参阅[[Maemo5 clutter performance]]以获得更多细节。
+
    * The performance of clutter can be improved by enabling hardware acceleration if not enabled already. In some cases, it would require installing restricted/proprietary drivers (Eg: on host machines with ATI or NVidia graphics card). Refer to Maemo5 clutter performance for more details.
-
* 以“-kb”选项启动Xephyr将会禁止键盘输入“@”标志。但去除“-kb”则会禁用方向键。
+
    * Running Xephyr with -kb option disables entry of “@” symbol. However, removing -kb option disables cursor keys.
-
* 在某些程序(例如浏览器和照片)中,颜色有时会反转。
+
    * Colours invert sometimes in some applications. (Browser and Photo's for example)

Learn more about Contributing to the wiki.


Please note that all contributions to maemo.org wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see maemo.org wiki:Copyrights for details). Do not submit copyrighted work without permission!


Cancel | Editing help (opens in new window)