如何为Qualcomm MSM系统编译Android 4.4.2?

时间:2015-04-21 05:01:40

标签: git android-build repo

我需要让OpenCV的原生相机在使用Android版本的设备上运行,其中包括对snapdragon系统(Android 4.4.2)的Qualcomm更改。基于this bug report的答案,我需要为我的项目编译目标android树,以便在编译OpenCV的本机相机库时引用它。

我已将此标记识别为与设备相关的标记:LNX.LA.3.6-00210-8084.0

我用

获得了源代码

repo init -u git://codeaurora.org/platform/manifest.git -b release --repo-url = git://codeaurora.org/tools/repo.git --repo-branch = caf-稳定

repo sync

默认分支是4.0.4。我试图用

结帐我的标签

repo forall -c git checkout LNX.LA.3.6-00210-8084.0

但是,许多子项目都没有这个标签。结果,这些项目似乎被废弃/无与伦比。我有一种强烈的感觉,这不是改变MSM 4.4.2树的正确方法,但我找不到正确的方法来做到这一点。在每个项目中尝试签出标签后,我在运行午餐时遇到错误

build / core / product_config.mk:223:***找不到产品“aosp_arm”的config makefile。停止。

**没有产品规格:'aosp_arm' **你有正确的回购清单吗?

一旦我使用repo克隆源代码,我需要运行哪些命令才能使项目处于MSM 4.4.2的可构建状态 - 特别是标签LNX.LA.3.6-00210-8084.0?第一次初始化时我是否需要运行不同的repo命令?

1 个答案:

答案 0 :(得分:2)

根据CodeAurora's Android for MSM Project wiki page,用于最新版本的Repo命令是

$ repo init -u git://codeaurora.org/platform/manifest.git \
    -b release -m [manifest] \
    --repo-url=git://codeaurora.org/tools/repo.git \
    --repo-branch=caf-stable

其中[manifest]是清单文件的名称。我找不到一个将清单文件(以CAF的内部版本名称命名)与AOSP版本相关联的参考表,但是您自己说它是LNX.LA.3.6-00210-8084.0,所以让我们继续使用它。事实上,release branch of CAF's platform/manifest.git中有这样一个清单文件。因此:

$ repo init -u git://codeaurora.org/platform/manifest.git \
    -b release -m LNX.LA.3.6-00210-8084.0.xml \
    --repo-url=git://codeaurora.org/tools/repo.git \
    --repo-branch=caf-stable

作为附注,不应依赖repo forall -c git checkout name-of-tag,因为不同的版本可能在其清单中具有不同的gits集。该命令仅在您当前清单中具有完全相同的gits集合以及要切换到的那个gits时才有效。