执行毫米时错误:构建Android源? [英] Building Android source: error when executing mm?

查看:321
本文介绍了执行毫米时错误:构建Android源?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

更新

我得到了这个工作。我如何我不知道。我都没有做配置的变化。我所做的是:

I got this working. How I am not sure. I did no config changes at all. What I did was:

  • 修改对话框框架/基/核心/爪哇/安卓/应用程序
  • 又到我的根( /路径/要/来源/ )。
  • 然后我做了 MMM框架/基/
  • Modify Dialog in frameworks/base/core/java/android/app.
  • Went to my root (/path/to/source/).
  • Then I did mmm frameworks/base/.

一切工作。然后我尝试的完全的是什么,我已经试过如下:

Everything worked. Then I tried exactly what I had already tried below:

  • 修改滚动型(其实我从来没有说过哪个文件,我修改)的框架/基/核心/爪哇/安卓/小工具
  • I CH 编辑为框架/基/核心/爪哇/安卓/小工具
  • 然后我做了毫米
  • Modify ScrollView (I actually never said which file I was modifying) in frameworks/base/core/java/android/widget.
  • I ch'ed to frameworks/base/core/java/android/widget.
  • Then I did mm.

这一次,我没有这样的错误被删除时,文件之前。现在,它只是工作。

This time I had no errors like before when the files were removed. Now it just works.

也许这就是一些缓存或错误?

Maybe this was some caching or bug?

/更新

我建立了Android源$ C ​​$ C仿真器。我建立了整个code与使-j32 和system.img到达输出输出/目标/产品/通用/系统。 IMG 。仿真器通过调用工作只需模拟器

I am building the Android source code for the emulator. I built the whole code with make -j32 and the system.img gets to the output out/target/product/generic/system.img. The emulator works simply by calling emulator.

当我这样做变化框架/基/核心/爪哇/安卓/小工具,使用文档,最合适的命令应该是毫米打造的当前目录。

When I do changes in frameworks/base/core/java/android/widget, using the hmm documentation, the most appropriate command would be mm to build the current directory.

不幸的是我得到一个错误:

Unfortunately I get an error:

请:*没有规则,使目标

make: * No rule to make target

`输出/目标/产品/通用/系统/框架/框架res.apk,

`out/target/product/generic/system/framework/framework-res.apk',

需要'走出/目标/产品/通用/系统/框架/ framework.jar。

needed by `out/target/product/generic/system/framework/framework.jar'.

停止。

请:离开目录   `/路径/要/来源/

make: Leaving directory `/path/to/source/'

离开我做使-j32 再次获得模拟器来运行和应用我的修正。

Leaving me to do make -j32 again to get the emulator to run and apply my fixes.

检查输出/目标/产品/通用/ 文件夹中使用毫米命令,system.img有后被删除与其他几件事情。

Checking the out/target/product/generic/ folder after using the mm command, system.img has been removed with several other things.

当我读到这则打印的日志:

When I read the logs this is printed:

* 的强制让installclean......

* Forcing "make installclean"...

* 的室射频输出/目标/产品/通用/数据/ *输出/目标/产品/通用/数据QEMU / *

* rm -rf out/target/product/generic/data/* out/target/product/generic/data-qemu/*

输出/目标/产品/通用/用户数据-qemu.img

out/target/product/generic/userdata-qemu.img

输出/主机/ Linux的-86 / OBJ / NOTICE_FILES输出/主机/ Linux的-86 / SDK

out/host/linux-x86/obj/NOTICE_FILES out/host/linux-x86/sdk

输出/目标/产品/通用/ .IMG出/目标/产品/通用/ 的.TXT

out/target/product/generic/.img out/target/product/generic/.txt

输出/目标/产品/通用/ .xlb出/目标/产品/通用/ 的.ZIP

out/target/product/generic/.xlb out/target/product/generic/.zip

输出/目标/产品/通用/内核输出/目标/产品/通用/数据

out/target/product/generic/kernel out/target/product/generic/data

输出/目标/产品/通用/ OBJ / APPS

out/target/product/generic/obj/APPS

输出/目标/产品/通用/ OBJ / NOTICE_FILES

out/target/product/generic/obj/NOTICE_FILES

输出/目标/产品/通用/ OBJ /包装

out/target/product/generic/obj/PACKAGING

输出/目标/产品/通用/恢复输出/目标/产品/通用/根

out/target/product/generic/recovery out/target/product/generic/root

输出/目标/产品/通用/系统

out/target/product/generic/system

输出/目标/产品/通用/ dex_bootjars

out/target/product/generic/dex_bootjars

输出/目标/产品/通用/ OBJ / JAVA_LIBRARIES

out/target/product/generic/obj/JAVA_LIBRARIES

输出/目标/产品/通用/ OBJ / FAKE

out/target/product/generic/obj/FAKE

输出/目标/产品/通用/ OBJ可执行/文件/ adbd_intermediates

out/target/product/generic/obj/EXECUTABLES/adbd_intermediates

输出/目标/产品/通用/ OBJ可执行/文件/ init_intermediates

out/target/product/generic/obj/EXECUTABLES/init_intermediates

输出/目标/产品/通用/ OBJ / ETC / mac_permissions.xml_intermediates

out/target/product/generic/obj/ETC/mac_permissions.xml_intermediates

输出/目标/产品/通用/ OBJ / ETC / sepolicy_intermediates

out/target/product/generic/obj/ETC/sepolicy_intermediates

* 的完成与清洗,从现在开始真正的构建。令:进入目录`/路径/到/来源/

* Done with the cleaning, now starting the real build. make: Entering directory `/path/to/source/'

我的猜测是,它会清理过时的数据,然后与已经prebuilt Android源$ C ​​$ C,但我在框架/基/核心/ java的变化重建它/安卓/小工具文件夹。

My guess is that it will clean "outdated" data and then rebuild it with the already prebuilt Android source code BUT with my changes in the frameworks/base/core/java/android/widget folder.

这是正确的做法?我下的是IM pression 毫米将编译哪些需要在当前目录下,不知怎么插入这个数据到system.img。

Is this the right approach? I was under the impression mm would compile what was needed in the current directory and somehow insert this data to the system.img.

我也看到了命令毫米-B ,什么是 -B 吗?

I have also seen the command mm -B, what does the -B do?

推荐答案

这发生在我身上了。

我能够使用MMM命令来解决这个问题。

I was able to solve it by using the mmm command.

从架构/基础文件夹中,我所做的:

From within the framework/base folder, I did:

mmm .

和之后,所有的MM命令工作。

and after that all "mm" commands worked.

毫米-B与MM: -b选项,如果强制构建W / O使用任何现有的OBJ文件(如做清洁,然后生成),这里的MM命令本身会使用任何现有的OBJ文件,并从那里继续生成。 如果你有一个成功的构建 - 你可以看到,在运行MM不会做的事,其中毫米-B会做一个完整的构建当前模块

"mm -B" vs "mm": The -B switch if forcing the build w/o the use of any existing obj files (as doing clean and then build), where the "mm" command alone will use any existing obj files and continue the build from there. If you have a successful build - you can see that running "mm" won't do a thing, where "mm -B" will do a full build of the current module.

这篇关于执行毫米时错误:构建Android源?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆