2013-07-26 85 views
0

我试图从aosp构建一个手机应用程序。我已经配置了我的工作目录,正如它在Google指南中所述。然后,我要我的工作目录,执行source build/envsetup.sh并得到如下:从aosp构建手机应用程序

including device/asus/grouper/vendorsetup.sh 
including device/generic/armv7-a-neon/vendorsetup.sh 
including device/generic/armv7-a/vendorsetup.sh 
including device/moto/wingray/vendorsetup.sh 
including device/samsung/crespo/vendorsetup.sh 
including device/samsung/maguro/vendorsetup.sh 
including device/ti/panda/vendorsetup.sh 
including sdk/bash_completion/adb.bash 

那么我执行命令mmm packages/apps/Phone/和不顺心的事,我得到

make: Entering directory `/home/build/WORK_DIR' 
make: *** No rule to make target `out/target/common/obj/JAVA_LIBRARIES/core_intermediates/javalib.jar', needed by `out/target/common/obj/JAVA_LIBRARIES/com.android.phone.common_intermediates/classes-full-debug.jar'. Stop. 
make: Leaving directory `/home/build/WORK_DIR' 

谁能给我解释一下什么我应该怎么做?我应该首先构建整个android项目,还是它是makefile中的错误?

回答

1

尝试首先构建整个源代码...之后,无论何时您对任何应用程序的源代码进行更改(在您的情况下为Phone),都需要重新构建整个代码。重建过程不会花费时间,因为只有更改将被内置到系统映像中。使用“make”而不是“mmm”。但是不要使用“make clean”,因为它会清除以前的版本并从头开始。所以外形为:

  1. 执行“使”建筑首次
  2. 使应用程序
  3. 执行更改“制造”再次
1

使用“使snod”如果您只需要将一个内置的组件连接到system.img