【问题标题】:How do I compile Android 4.4.2 for Qualcomm MSM systems?如何为 Qualcomm MSM 系统编译 Android 4.4.2?
【发布时间】:2015-04-21 05:01:39
【问题描述】:

我需要使 OpenCV 的本机摄像头在使用带有高通对 snapdragon 系统 (Android 4.4.2) 更改的 android 版本的设备上工作。根据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-稳定

回购同步

默认分支是 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”的配置生成文件。停下来。

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

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

【问题讨论】:

    标签: git android-build repo


    【解决方案1】:

    根据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,因为不同的版本可能在其清单中具有不同的 git 集。该命令仅在您当前清单中已拥有完全相同的 git 集以及您要切换到的 git 集时才有效。

    【讨论】:

    • 当然。我实际上尝试了类似的东西,但没有想到将“.xml”添加到标签名称中。我的构建现在可以工作了,谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-08
    • 1970-01-01
    • 2011-12-10
    • 2014-06-06
    • 1970-01-01
    • 2012-01-31
    相关资源
    最近更新 更多