Ying,
Thanks for the response.
First the "easy" stuff is two things in the build-system.html
document that is out of date in froyo:
1. "make targets" does not work.
2. The document talks a lot about using templates from 'templates/
apps' but there is no such directory.
Now for the some random deficiencies:
* In froyo, for me, a 'simulator' build fails. The first of a series
of failures had to do with it not being able to find 'strlcpy'.
* I didn't see anywhere a formal explanation of what a 'simulator'
build was. I still am not sure. My confusion stems from the existence
of the emulator. I first I thought it was a special build for use with
the emulator. But that's not correct. What is?
I finally figure the following out, but a formal explanation would
be nice:
* The difference 'lunch' and 'choosecombo'.
* That to build for an actual device you choose a 'passion' target.
* That to build for the emulator you need to say 'make PRODUCT-sdk-
sdk'. And that this will create a a directory called 'out/hosts/linux-
x86/sdk/android-sdk_eng.tip_linux-x86'; which can be used as the
ANDROID_SDK_ROOT.
* Speaking of which, there are various important environment
variables: ANDROID_SDK_ROOT, ANDROID_SDK, SDK_HOME. It would be nice
to know the official list and what they affect. It doesn't haven't to
be comprehensive. Just the most important ones.
* That different combos produce different results in different
directories in 'out'. I think. That is, I know that 'PRODUCT-sdk-sdk'
target produces a unique result in out. I think. And I also think that
a 'passion' target overwrites different files in out, from a 'eng'
build. But I don't know about 'debug' and 'release' and the others.
This is important to know because you want to know if you are wasting
compile time by switching around different builds. Right now, to make
sure I am not, I have completely separate top trees representing
choosecombo's. But is that necessary?
The things I was not able to figure out but I managed to work
around:
* How to update a running emulator with a new core app, like Phone,
for example. When I tried this it failed. After a lot of different
things, I decided to give up and just rebuild the emulator image
(using make PRODUCT-sdk-sdk) and then restart the emulator. But I was
close. Here were the problems:
+ When I tried to flash the new APP .apk image into the emulator
(into /system/app), I got an out of space error. That is, even if I
deleted the APP first. The space was not reclaimed; so the new .apk
wouldn't take. I was able to work around this by creating the
emulator's system.img with a bunch of dummy junk. Then after I deleted
it I was able to copy in the new .apk. But, for the phone app this
just caused the program to die. I played around a lot with deleting
the dalvik-cache file; but that didn't seem to work. I eventually gave
up. It would be nice to know, in theory anyway, if flashing a new CORE
app into a running emulator is possible. Perhaps my choice of the
phone app was just unlucky.
* A common error I got when I started the emulator was:
emulator: ERROR: could not find required kernel image (kernel-qemu).
emulator: Your ANDROID_SDK_ROOT is probably wrong:...
What I finally figured out was that it was looking for
$ANDROID_SDK_ROOT/platforms/android-8/...
BUT my environment had the name of the directory as 'android-2.2'.
All I did was create a soft link from android-8 to android2.2 and it
started working.
Okay, I am probably forgetting something. But hopefully the above
is helpful.
Thanks,
Doug
On Jul 15, 1:57 am, Ying Wang <
wangy...@android.com> wrote:
> Hi Doug,
> It would be great if you can send out the list of problems you
> encountered.
> I think I am the best fit for the "Google Android Engineer" you mentioned.
> I used to consider revamping the build-system.html, but never got the time
> to realize it..
> I still can not promise when I will do it. sorry.
> The build system is in active development as well, so even with a
> revamping it may get out of date soon :-)
>
> thanks!
>
>
>
> On Tue, Jul 13, 2010 at 11:36 AM, dug <
douglasse...@gmail.com> wrote:
> > My Working Environment: Froyo
>
> > Something which I can't find is a complete practical guide focused on
> > how to work with Android Core Apps, like, packages/apps/Email for
> > example.
>
> > What I really want to do is look over the shoulder of an engineer on
> > the Android team to see how he sets up his environment to do it.
>
> > None of the topics inhttp://source.android.comare focused on this. I
> >
android-buildi...@googlegroups.com<android-building%2Bunsubscrib
e...@googlegroups.com>