Menu [toggle]

Print

FAQ

Q: I´ve question, not answered here

A: contact me for any questions, clarifications or suggestions: tarasov <at> bsdroid.org

Q: What are BSDroid SDK snapshots in brief?

A: BSDroid SDK snapshots are used to develop Android applications on FreeBSD. Although it is not full-fledged SDKs yet, it provides working emulator, all utilities, needed to build Android applications, except eclipse plugin (ADT) and adb, needed to install .apk files on real device.

Q: What is inside snapshot archive?

A: Archive contains same files as official SDK for other systems for time of archive creation. Archives are produced automatically by Android build system while making sdk target on master branch.

Q: How to use it?

A: It's the same set of utilities as for other operating systems, but without proper support for Eclipse yet. So, read related information for development in IDEs, that differ from Eclipse, in official Android SDK Documentation (external link).

Q: Can I download sources for SDK (or patches)?

A: All patches needed to build SDK for FreeBSD were uploaded for review to source.android.com (external link) Small part of patches were approved and committed to master branch, others were never committed. I've no hosting now, situable to host all my local git-repositories, so sources are not available in other way as downloading patch by patch from gerrit. I plan to host source tarballs in future.

Q: How to build Android SDK on FreeBSD?

A: 1. Install repository, as documented here (external link), e.g. to path/to/asdk directory

2. execute or better include to your profile file: source path/to/asdk/build/envsetup.sh

3. Download all not merged patches from here (external link), see repo documentation (external link) for 'download' action parameters.

4. make libraries (or symlinks to linux libraries) in asdk/prebuilt/freebsd-x86 with same structure as in other prebuilts directories, make symlink to Linux arm toolchain folder, place swt related binaries (the same versions as for other systems, as it is hardcoded in Android build system!) to theirs appropriate place in prebuilts folder.

5. Go to SDK root folder

cd path/to/asdk/

6. Setup environment (be sure envsetup.sh was included to your environment before it)

lunch

7. be sure, you have GNU make, Java JDK (1.5, or 1.5 and 1.6) and Linux support enabled on your system (last one is required for target platform compilation):

$ANDROID_MAKER sdk

or just simplier

gmake sdk

8. Wait some time and check sdk zip file in path/to/asdk/out/host/freebsd-x86/sdk

A2: Newest patches are not uploaded for review, they are not yet available in other way, except as request for them via email. I plan to upload all patches in next few weeks to this site.

Q: How to start emulator?

A: you may read official documentation on all options and ways to start, but simplies way is

asdk/tools/emulator -system asdk/platforms/android-1.5/images -kernel asdk/platforms/android-1.5/images/kernel-qemu -data asdk/platforms/android-1.5/images/userdata.img

where "asdk" is root folder of Android 1.5 SDK (current version of SDK). Note, that ANDROID_SDK_ROOT must point to SDK root directory.

More correct way to start emulator (assuming you're using bash) is execute android - manager of VIDs:

]$ unzip android-sdk-someversion.zip

]$ export ANDROID_SDK_ROOT=`pwd`/android-sdk-someversion

]$ cd ./android-sdk-simeversion/tools

]$ android

No command line parameters provided, launching UI.

See 'android --help' for operations from the command line.

Q: adb fails to start, it writes "ADB server didn’t ACK". What are possible reasons?

A: There are several possible reasons:

  1. check if ADB_TRACE is not set to any value, except 0. ADB_TRACE enabling causes problems in interaction with forked adb server (communications are performed via stderr, where tracing information is printed out as well). In ideal case "setenv | grep ADB_TRACE" in csh must not print out anything.
  2. check if procfs is mounted at /proc. Several android tools use it to get executable filename/path. (Thanks to Pois for finding related problem and solution for it).


Created by: System Administrator. Last Modification: Monday 05 of July, 2010 21:26:33 CDT by System Administrator.