简体   繁体   English

对于oneplus,CM12构建失败

[英]CM12 build failed for oneplus one

I am following this wiki http://wiki.cyanogenmod.org/w/Build_for_bacon to build cyanogenmod 12 for oneplus one. 我正在关注这个wiki http://wiki.cyanogenmod.org/w/Build_for_bacon来为oneplus构建cyanogenmod 12。 Build fails with the following error. 构建失败,出现以下错误。

brunch bacon 早午餐培根

including vendor/cm/vendorsetup.sh
Looking for dependencies
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=5.0.2
CM_VERSION=12-20150505-UNOFFICIAL-bacon
TARGET_PRODUCT=cm_bacon
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=krait
TARGET_2ND_ARCH=
TARGET_2ND_ARCH_VARIANT=
TARGET_2ND_CPU_VARIANT=
HOST_ARCH=x86_64
HOST_OS=linux
HOST_OS_EXTRA=Linux-3.19.0-15-generic-x86_64-with-Ubuntu-15.04-vivid
HOST_BUILD_TYPE=release
BUILD_ID=LRX22G
OUT_DIR=/media/habisravi/04D2DE9BD2DE8FF2/cxx/android/system/out

Error: 错误:

build/core/copy_headers.mk:15: warning: overriding recipe for target '/media/habisravi/04D2DE9BD2DE8FF2/cxx/android/system/out/target/product/bacon/obj/include/qcom/display/copybit.h'
build/core/copy_headers.mk:15: warning: ignoring old recipe for target '/media/habisravi/04D2DE9BD2DE8FF2/cxx/android/system/out/target/product/bacon/obj/include/qcom/display/copybit.h'
build/core/copy_headers.mk:15: warning: overriding recipe for target '/media/habisravi/04D2DE9BD2DE8FF2/cxx/android/system/out/target/product/bacon/obj/include/qcom/display/copybit_priv.h'
build/core/copy_headers.mk:15: warning: ignoring old recipe for target '/media/habisravi/04D2DE9BD2DE8FF2/cxx/android/system/out/target/product/bacon/obj/include/qcom/display/copybit_priv.h'
device/oppo/msm8974-common/mkbootimg.mk:21: warning: overriding recipe for target '/media/habisravi/04D2DE9BD2DE8FF2/cxx/android/system/out/target/product/bacon/dt.img'
build/core/generate_extra_images.mk:109: warning: ignoring old recipe for target '/media/habisravi/04D2DE9BD2DE8FF2/cxx/android/system/out/target/product/bacon/dt.img'
make: *** No rule to make target '/media/habisravi/04D2DE9BD2DE8FF2/cxx/android/system/out/host/linux-x86/bin/dtbToolCM', needed by '/media/habisravi/04D2DE9BD2DE8FF2/cxx/android/system/out/target/product/bacon/dt.img'.  Stop.
make: *** Waiting for unfinished jobs....

I faced the same problem, Its due to cyanogenmod not keeping their dependencies updated. 我面临同样的问题,由于cyanogenmod没有保持其依赖关系更新。

Here is the solution: 这是解决方案:

1.) Go to your base directory where you have all the code (croot) and run the following commands: 1.)转到您拥有所有代码(croot)的基本目录并运行以下命令:
$ mkdir .repo/local_manifests $ mkdir .repo / local_manifests
$ nano .repo/local_manifests/local_manifests.xml (You can name it anything you like) $ nano .repo / local_manifests / local_manifests.xml(你可以任意命名)

2.) Paste the following lines into local_manifests.xml: 2.)将以下行粘贴到local_manifests.xml中:

    <?xml version="1.0" encoding="UTF-8"?>  
    <manifest>  
    <project name="CyanogenMod/android_device_oneplus_bacon"  path="device/oneplus/bacon" remote="github" revision="cm-12.1" />  
    <project name="CyanogenMod/android_device_qcom_common" path="device/qcom/common" remote="github" revision="cm-12.1" />  
    <project name="CyanogenMod/android_device_oppo_msm8974-common" path="device/oppo/msm8974-common" remote="github" revision="cm-12.1" />  
    <project name="CyanogenMod/android_device_oppo_common" path="device/oppo/common" remote="github" revision="cm-12.1" />  
    <project name="CyanogenMod/android_kernel_oneplus_msm8974" path="kernel/oneplus/msm8974" remote="github" revision="cm-12.1" />  
    <project name="TheMuppets/proprietary_vendor_oppo" path="vendor/oppo" remote="github" revision="cm-12.1" />  
    <project name="TheMuppets/proprietary_vendor_oneplus" path="vendor/oneplus" remote="github" revision="cm-12.1" />  
    </manifest>  

3.) Follow rest of the guide. 3.)按照指南的其余部分进行操作。 You can now also exclude "Extract proprietary blobs" section as all the files extracted from device (heMuppets/proprietary_vendor_oneplus) are already listed in local_manifests.xml 您现在还可以排除“Extract proprietary blobs”部分,因为从设备中提取的所有文件(heMuppets / proprietary_vendor_oneplus)已经在local_manifests.xml中列出

I hope this helps. 我希望这有帮助。

I found that if I take device/qcom/comon/dbtool and place it in (in my case) msm8916-common this fixed the problem. 我发现如果我接受device/qcom/comon/dbtool并将其放入(在我的情况下) msm8916-common这就解决了这个问题。 I am not sure why, maybe it only associates qcom common with the msm devices, listed next to common idk but this works as a fix, hope it helps :) 我不知道为什么,也许它只关联qcom常见的msm设备,列在常见的idk旁边,但这可以作为修复,希望它有帮助:)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM