在Debian 7.6上运行App Inventor 2的备忘录
在Debian 7.6中运行App Inventor 2的备忘录。
结论 (jié
appinventor2にはバージョン2.15以上のlibc6を使うpython2.7が必要だがwheezyでは2.13-*だ。
jessie (testing)のpython2.7ならlibc6のバージョンは2.19だ。
jessie (testing)のパッケージをちょい借りしてインストールしたら動いた。
操作步骤
公式的安装手册位于 http://appinventor.mit.edu/explore/ai2/linux.html。
$ cat /etc/debian_version
7.6
$ wget http://dl.google.com/dl/appinventor/installers/linux/appinventor2-setup_1.1_all.deb
dpkg --install appinventor2-setup_1.1_all.deb
$ /usr/google/appinventor/commands-for-Appinventor/aiStarter
Error loading Python lib '/tmp/_MEI8NLJBE/libpython2.7.so.1.0': /lib/i386-linux-gnu/i686/cmov/libc.so.6: version `GLIBC_2.15' not found (required by /tmp/_MEI8NLJBE/libpython2.7.so.1.0)
检查已安装的软件包时,出现了libpython2.7和GLIBC_2.15的错误。
$ aptitude show libpython2.7
Package: libpython2.7
State: installed
Automatically installed: yes
Version: 2.7.3-6+deb7u2
Priority: optional
Section: libs
Maintainer: Matthias Klose <doko@debian.org>
Architecture: i386
Uncompressed Size: 2926 k
Depends: python2.7 (= 2.7.3-6+deb7u2), libc6 (>= 2.7), libgcc1 (>= 1:4.1.1), zlib1g (>= 1:1.2.0)
Replaces: python2.7 (< 2.6)
Description: Shared Python runtime library (version 2.7)
Version 2.7 of the high-level, interactive object oriented language, includes an extensive class library
with lots of goodies for network programming, system administration, sounds and graphics.
This package contains the shared runtime library, normally not needed for programs using the statically
linked interpreter.
看起来正在使用libc6。检查libc6的版本。
$ aptitude show libc6
Package: libc6
State: installed
Automatically installed: no
Multi-Arch: same
Version: 2.13-38+deb7u4
Priority: required
Section: libs
Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org>
Architecture: i386
Uncompressed Size: 8696 k
Depends: libc-bin (= 2.13-38+deb7u4), libgcc1
Recommends: libc6-i686
Suggests: glibc-doc, debconf | debconf-2.0, locales
Conflicts: prelink (<= 0.0.20090311-1), tzdata (< 2007k-1), tzdata-etch
Breaks: locales (< 2.13), locales-all (< 2.13), nscd (< 2.13)
Replaces: libc6-i386
Provides: glibc-2.13-1
Description: Embedded GNU C Library: Shared libraries
Contains the standard libraries that are used by nearly all programs on the system. This package includes
shared versions of the standard C library and the standard math library, as well as many others.
Homepage: http://www.eglibc.org
据说是2.13-38+deb7u4版本。之前的错误中提到了GLIBC_2.15,所以版本太旧了。看起来要将版本升级至2.15或更高。
在 Jessie(正在测试中)中,版本号似乎为2.19-13。https://packages.debian.org/jessie/libc6
顺便查一下jessie(测试)的python2.7的依赖关系。https://packages.debian.org/jessie/python2.7
以下是一段摘录。看起来是指的libc6(>= 2.15)。
-
- python2.7 (2.7.8-11)
libpython2.7-stdlib (= 2.7.8-11)
libc6 (>= 2.15)
所以,让我们安装Jessie(测试版)上的Python 2.7。
deb http://ftp.jp.debian.org/debian testing main contrib non-free
deb-src http://ftp.jp.debian.org/debian testing main contrib non-free
$ aptitude update
$ aptitude install python2.7/testing
$ aptitude versions python2.7
Package idle-python2.7:
p 2.7.3-6+deb7u2 stable 500
p 2.7.8-11 testing 500
结束了。