On Tuesday, October 30, 2012 at 02:43 PDT,
Benjamin <
b74c...@gmail.com> wrote:
> For my thesis, I'm modifying the android framework and building the
> source (4.1.1 Jelly Bean). I can do a full build, but because this is
> very timeconsuming (I'm developing on a ubuntu 12.04 64bit virtual
> machine) I'd like to build seperate modules.
>
> For example: When doing changes to the location modules, it should be
> possible to just build the changed module, and make a new system
> image:
>
> mmm frameworks/base
> make snod
>
> But this doesn't work. Everytime I try to boot, the new system image won't
> boot because of (this is one of the mismatches, :
>
> I/dalvikvm( 1696): DexOpt: mismatch dep signature for '/system/framework/framework.odex'
> E/dalvikvm( 1696): /system/app/SettingsProvider.apk odex has stale dependencies
> I/dalvikvm( 1696): Zip is good, but no classes.dex inside, and no valid .odex file in the same directory
As you've discovered, this is because of the dex pre-optimization that
makes all optimized dex code require upon the exact same copies of all
dependent jar files as when it was built.
> After some research, I tried to disable dexpreopt with the enviroment
> variables
>
> export $WITH_DEXPREOPT=false
>
> and
>
> export $DISABLE_DEXPREOPT=true
Drop the $.
export WITH_DEXPREOPT=false
export DISABLE_DEXPREOPT=true
[...]
--
Magnus Bäck
ba...@google.com