I've been doing Android application development for Android 1.5 on
Debian etch
(4.0), and things were going okay.  I then tried upgrading the SDK to
support
more recent platforms.  The problem is that the vast majority of the
tools
that are executables (I'm not counting shell scripts) seem to now
depend on
glibc >= 2.4.  When trying to execute them, or passing them to ldd, I
get an
error like:

./aapt: /lib/tls/i686/cmov/libc.so.6: version `GLIBC_2.4' not found
(required by ./aapt)

On Debian, the file /lib/tls/i686/cmov/libc.so.6 is provided by the
libc6-i686
package, which on etch is version 2.3.6.ds1-13etch7, but on lenny I
see that
the version has increased to 2.7-18.

I can think of a few workarounds:
- Copy the required libraries from a supported platform and point to
them with
  LD_LIBRARY_PATH when using the affected executables.
- Download the sources for the tools
  (e.g.
  
http://android.git.kernel.org/?p=platform/frameworks/base.git;a=tree;f=tools/aapt;h=979a134fe433580ecaa71bf80b4e994cda4ce0b0;hb=HEAD)
  and build my own local versions for Debian etch.
- Give up using Debian etch and switch to another platform.

All of these are potentially viable alternatives for me, so this isn't
a show
stopper, and indeed http://developer.android.com/sdk/requirements.html
says
that it's only tested for GNU/Linux on Ubuntu Hardy Heron, which uses
version
2.7-10ubuntu5.  Nevertheless, it's somewhat annoying, and I'm
wondering if
anyone has any thoughts, or if the Android team even knows of the
issue.  I'm
guessing that sometime in the transition from 1.5 to 1.6, they
switched from
an earlier Ubuntu version (I have to go back to Dapper, which uses
2.3.6-0ubuntu20.5, to find a pre-2.4 version) to Hardy, and this was
just a side effect.  But I'd be surprised if there was anything
specific in
the source that really required libc 2.4, and it's possible that if
they were
just building with an appropriate compiler flag that backwards
compatability
could be maintained.

This affects all platform-specific tools for platforms >= android-1.6
(so
aapt, aidl, and dexdump), and it affects all platform-agnostic tools
(except
for hprof-conf and mksdcard; so adb, dmtracedump, emulator, sqlite3,
and
zipalign) installed with the new modular sdk download
(android-sdk_r3-linux.tgz) available starting in the android 1.6
timeframe
(the corresponding tools from the android 1.5 timeframe in the
monolithic SDK
download of android-sdk-linux_x86-1.5_r3.zip work fine).

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to