[OnePlus 3 Guides, News, & Discussion] cohaolain:
[MENTION=3119377]Schrotty35[/MENTION] [MENTION=6211832]panther124[/MENTION] [MENTION=3683898]feeq13[/MENTION]

Okay guys, everybody who's experiencing problems with the ninja build and getting the following error:

ninja: Entering directory `.'
ninja: error: '/home/android/android/system/out/target/product/oneplus3/obj_arm/SHARED_LIBRARIES/libtime_genoff_intermediates/export_includes', needed by '/home/android/android/system/out/target/product/oneplus3/obj_arm/SHARED_LIBRARIES/libandroid_servers_intermediates/import_includes', missing and no known rule to make it
build/core/ninja.mk:151: recipe for target 'ninja_wrapper' failed
make: *** [ninja_wrapper] Error 1
make: Leaving directory '/home/android/android/system'

#### make failed to build some targets (38 seconds) ####

I believe this error means that your source code is missing some parts of the source that are important for the build. This is probably proprietary blobs, which can be temperamental sometimes (I will update the guide).

Firstly, re-run the usual:

cd ~/android/system
repo sync

To make sure all currently loaded repos are updated.

Now run:

breakfast oneplus3
repo sync
brunch oneplus3

to try the old way again, and update again to see if this changes anything. The last command will try build again.

This SHOULD work, but if it doesn't, you still have two options left that I'm aware of at the moment. I'll write up the first one now, and will detail the second one later if it's required.

Run this:

nano ~/android/system/.repo/local_manifests/roomservice.xml

and check it for the following:

<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="CyanogenMod/android_device_oppo_common" path="device/oppo/common" remote="github" revision="cm-14.0" />
<project name="CyanogenMod/android_device_qcom_common" path="device/qcom/common" remote="github" revision="cm-14.0" />
<project name="TheMuppets/proprietary_vendor_oneplus" path="vendor/oneplus" remote="github" revision="cm-14.0" />
<project name="CyanogenMod/android_device_oneplus_oneplus3" path="device/oneplus/oneplus3" remote="github" revision="cm-14.0" />
<project name="CyanogenMod/android_kernel_oneplus_msm8996" path="kernel/oneplus/msm8996" remote="github" revision="cm-14.0" />
<project name="CyanogenMod/android_external_sony_boringssl-compat" path="external/sony/boringssl-compat" remote="github" revision="cm-14.0" />
<project name="CyanogenMod/android_external_stlport" path="external/stlport" remote="github" revision="cm-14.0" />
<project name="CyanogenMod/android_vendor_nxp-nfc_opensource_Nfc" path="vendor/nxp-nfc/opensource/Nfc" remote="github" revision="cm-14.0" />
<project name="CyanogenMod/android_vendor_nxp-nfc_opensource_frameworks" path="vendor/nxp-nfc/opensource/frameworks" remote="github" revision="cm-14.0" />
<project name="CyanogenMod/android_vendor_nxp-nfc_opensource_libnfc-nci" path="vendor/nxp-nfc/opensource/libnfc-nci" remote="github" revision="cm-14.0" />
</manifest>

If there's lines missing from your file, add them in manually now. When they're all added, press Ctrl+X, type 'Y' and press Enter.

Now, run:

croot
repo sync
brunch oneplus3

And hopefully everything should run smoothly now. Otherwise let me know, and good luck to you all :)