Group: Hardware/History/Howto have a free android sdk

From LibrePlanet
< Group:Hardware‎ | History
Revision as of 05:39, 6 July 2009 by Gnutoo2 (talk | contribs) (Documentation on howto compile it)
Jump to: navigation, search

Rationale

A free SDK could permit us to develop free applications for the androids phones such as a replacement for non-free applications that runs on the androids phones such as the market

Documentation on howto compile it

The problem is that with the JDK6(icedtea is a JDK6) we get that error:

$ make sdk
build/core/product_config.mk:261: WARNING: adding test OTA key
============================================
TARGET_PRODUCT=freerunner
TARGET_BUILD_VARIANT=eng
TARGET_SIMULATOR=
TARGET_BUILD_TYPE=release
TARGET_ARCH=arm
HOST_ARCH=x86
HOST_OS=linux
HOST_BUILD_TYPE=release
BUILD_ID=
============================================
find: File system loop detected; `./external/alsa-lib/include/alsa' is part of the same file system loop as `./external/alsa-lib/include'.
Removing from sdk:
: out/target/product/freerunner/system/bin/dbus-daemon
: out/target/product/freerunner/system/lib/libdbus.so
: out/target/product/freerunner/system/xbin/dbus-monitor
: out/target/product/freerunner/system/xbin/dbus-send
: out/target/product/freerunner/system/xbin/hcidump
: out/target/product/freerunner/system/xbin/opcontrol
: out/target/product/freerunner/system/xbin/oprofiled
target Jar: core-tests (out/target/common/obj/JAVA_LIBRARIES/core-tests_intermediates/javalib.jar)
Install: out/target/product/freerunner/system/app/Mms.apk
Finding NOTICE files: out/target/product/freerunner/obj/NOTICE_FILES/hash-timestamp
Combining NOTICE files: out/target/product/freerunner/obj/NOTICE.txt
Finding NOTICE files: out/host/linux-x86/obj/NOTICE_FILES/hash-timestamp
Combining NOTICE files: out/host/linux-x86/obj/NOTICE.txt
Combining NOTICE files: out/target/product/freerunner/obj/NOTICE.html
gzip -c out/target/product/freerunner/obj/NOTICE.html > out/target/product/freerunner/obj/NOTICE.html.gz
Target system fs image: out/target/product/freerunner/obj/PACKAGING/systemimage_unopt_intermediates/system.img
Install system fs image: out/target/product/freerunner/system.img
Package: out/target/product/freerunner/freerunner-img-eng.android.zip
Docs droiddoc: out/target/common/docs/dx
javadoc: error - In doclet class DroidDoc,  method start has thrown an exception java.lang.reflect.InvocationTargetException
com.sun.tools.javac.code.Symbol$CompletionFailure: class file for sun.util.resources.OpenListResourceBundle not found
1 error
make: *** [out/target/common/docs/dx-timestamp] Error 45

According to the search engines it's not specific to my target but it's a classic error when someone doesn't have the old non-free java5 version

My first try was to try to add the missing class:

so I added the class in /home/android/koolu/build/tools/droiddoc/src

cd /home/android/koolu/build/tools/droiddoc/src
mkdir -p sun/util/resources/
cp ~/errors/OpenListResourceBundle.java sun/util/resources/

And I modified the Android.mk like this:

LOCAL_SRC_FILES := \
+     sun/util/resources/OpenListResourceBundle.java \

while it compiled the class and added it where it should do it didn't work and I had the same error(I didn't understand if it came back later or if the build process had rebuild more things before failing)

How to use it