Adding superuser to my aosp build - Nexus 4 Q&A, Help & Troubleshooting

I'm trying to add koush's superuser to my aosp build, the build is finally going fine after following the directions on his github readme. I added the local_manifests, which gave errors at first saying no remote fetch defined. I went ahead and defined my remote in the local_manifest.xml
Code:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote fetch="git://github.com" name="github" />
<project name="koush/Superuser" path="external/koush/Superuser" remote="github" revision="master" />
<project name="koush/Widgets" path="external/koush/Widgets" remote="github" revision="master" />
</manifest>
I edited the device/lge/mako/device.mk to redefine the
Code:
SUPERUSER_PACKAGE := com.mypackagename.superuser
as described in the readme as well, the build comes out without errors and I seem to have no built superuser anywhere inside the zip or in the rom after it boots.
Am I just missing something simple that I'm not aware of? any advice or ideas? I'm aware that I could just drop a precompiled apk and binary into the otapackage that I build, I'd rather learn to do it this way though..
Thanks!

VoiD_Dweller said:
I'm trying to add koush's superuser to my aosp build, the build is finally going fine after following the directions on his github readme. I added the local_manifests, which gave errors at first saying no remote fetch defined. I went ahead and defined my remote in the local_manifest.xml
Code:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote fetch="git://github.com" name="github" />
<project name="koush/Superuser" path="external/koush/Superuser" remote="github" revision="master" />
<project name="koush/Widgets" path="external/koush/Widgets" remote="github" revision="master" />
</manifest>
I edited the vendor/lge/mako/boardconfigvendor.mk to redefine the
Code:
SUPERUSER_PACKAGE := com.mypackagename.superuser
as described in the readme as well, the build comes out without errors and I seem to have no built superuser anywhere in the room after it boots.
Am I just missing something simple that I'm not aware of? any advice or ideas? I'm aware that I could just drop a precompiled apk and binary into the otapackage that I build, I'd rather learn to do it this way though..
Thanks!
Click to expand...
Click to collapse
Why don`t you PM a rom dev. Most users cannot help you i guess. Just an idea

gee2012 said:
Why don`t you PM a rom dev. Most users cannot help you i guess. Just an idea
Click to expand...
Click to collapse
Public forum, someone else might find it useful also, if it gets figured out..

err nvm question still stands....

Related

[Q] Next step after repo sync

Alright so I've got the whole repo synced, now I need to get the blobs for my device right? I'm building on the evo lte codenamed Jewel
Made an xml file in android/omni/.repo/local_manifest called roomservice.xml
This is what I put inside:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="Jewel/proprietary_vendor_HTC" path="vendor/HTC" remote="github" revision="cm-10.2" />
</manifest>
Am I doing everything correctly thus far? Miss anything inbetween repo sync and extracting the proprietary blobs?
numel007 said:
Alright so I've got the whole repo synced, now I need to get the blobs for my device right? I'm building on the evo lte codenamed Jewel
Made an xml file in android/omni/.repo/local_manifest called roomservice.xml
This is what I put inside:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="Jewel/proprietary_vendor_HTC" path="vendor/HTC" remote="github" revision="cm-10.2" />
</manifest>
Am I doing everything correctly thus far? Miss anything inbetween repo sync and extracting the proprietary blobs?
Click to expand...
Click to collapse
Not sure what's required for HTC, but I would recommend AGAINST making any manual edits to roomservice.xml - use a different XML file in local_manifests for your own stuff
Entropy512 said:
Not sure what's required for HTC, but I would recommend AGAINST making any manual edits to roomservice.xml - use a different XML file in local_manifests for your own stuff
Click to expand...
Click to collapse
Actually when I checked the file after repo sync, the file didn't even exist. Come to think of it local_manifest wasn't there, so I made it manually. Did I miss something?
Sent from a non-i****
numel007 said:
Actually when I checked the file after repo sync, the file didn't even exist. Come to think of it local_manifest wasn't there, so I made it manually. Did I miss something?
Sent from a non-i****
Click to expand...
Click to collapse
Nope. Although I would change roomservice.xml to your_device_name.xml to stop any potential conflicts. And Entropy512 probably thought you were editing the roomservice.xml referenced here: https://github.com/omnirom/android_build/blob/android-4.3/tools/roomservice.py#L161
numel007 said:
Alright so I've got the whole repo synced, now I need to get the blobs for my device right? I'm building on the evo lte codenamed Jewel
Made an xml file in android/omni/.repo/local_manifest called roomservice.xml
This is what I put inside:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="Jewel/proprietary_vendor_HTC" path="vendor/HTC" remote="github" revision="cm-10.2" />
</manifest>
Am I doing everything correctly thus far? Miss anything inbetween repo sync and extracting the proprietary blobs?
Click to expand...
Click to collapse
In order to build an unofficial device, as I have gathered it:
First(after setting up the build environment, of course, which is easily demonstrated with a quick google search), you must create a local_manifest. Basically, when you repo sync, it downloads all of the files included in the manifest, which you received when you did repo init. However, your device files are not included in the manifest because it's unofficial (not supported). In order to get your device files to download with the repo sync, you create the local_manifest. To create a local_manifest,
in cmd,
cd omni (so you get into your rom directory)
mkdir .repo/local_manifests (creates a folder to put your local manifest in)
touch .repo/local_manifests/local_manifest.xml (creates the local manifest.xml)
Now go to your file explorer. open omni directory. there should be nothing, unless you've already repo synced. If you have already repo synced, no worries. press control+h. a hidden folder called .repo will appear. double click it. then >local_manifests> open local_manifest.xml. In this xml, you will need to put your device tree, your kernel tree, and your vendor tree. Additionally, you will need trees that contain common files with other devices. These are all able to be found by looking on your device forum. It looks as though you may have the vendor tree in your local_manifest right now. I have found the items that you need to add to your local_manifest. simply add this:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote name="github"
fetch="git://github.com/" />
<!-- CyanogenMod -->
<project name="CyanogenMod/android_device_htc_jewel" path="device/htc/jewel" remote="github" revision="cm-10.2" />
<project name="CyanogenMod/android_device_htc_s4-common" path="device/htc/s4-common" remote="github" revision="cm-10.2" />
<project name="CyanogenMod/android_device_htc_msm8960-common" path="device/htc/msm8960-common" remote="github" revision="cm-10.2" />
<project name="CyanogenMod/android_kernel_htc_msm8960" path="kernel/htc/msm8960" remote="github" revision="cm-10.2" />
<!-- Add HTC Proprietary Files -->
<project name="TheMuppets/proprietary_vendor_htc" path="vendor/htc" remote="github" revision="cm-10.2" />
<!-- Add qcom-caf source for our phone -->
<project path="hardware/qcom/media-caf" name="SlimRoms/hardware_qcom_media-caf" remote="github" revision="jb4.3" />
<project path="hardware/qcom/display-caf" name="SlimRoms/hardware_qcom_display-caf" remote="github" revision="jb4.3" />
<project path="hardware/qcom/audio-caf" name="SlimRoms/hardware_qcom_audio-caf" remote="github" revision="jb4.3" />
</manifest>
(end)
Save.
Now you repo sync. If you have never repo synced, it'll take a while. If you've already repo synced and just added the local_manifest, it shouldn't take long at all.
Next you have to edit the device tree in order to get it to build and add a line to vendorsetup.sh. However, I have not been able to look at what changes need to be made in order to get it to work. I was gonna take a look at it all on sunday. Maybe someone else can step in here to tell him what he needs to do?
Sent from my TF300T using xda app-developers app
andrewnelson23 said:
In order to build an unofficial device, as I have gathered it:
Sent from my TF300T using xda app-developers app
Click to expand...
Click to collapse
Well gee thanks!
Sent from a non-i****
Alright repo sync with the new local_manifest.xml comes up with this error:
remote: Counting objects: 8, done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 6 (delta 2), reused 5 (delta 1)
Unpacking objects: 100% (6/6), done.
From https://github.com/omnirom/android
4a32d1c..f246d15 android-4.3 -> origin/android-4.3
project .repo/manifests/
Updating 4a32d1c..f246d15
Fast-forward
default.xml | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
fatal: remote github already exists with different attributes
andrewnelson23 said:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote name="github"
fetch="git://github.com/" />
<!-- CyanogenMod -->
<project name="CyanogenMod/android_device_htc_jewel" path="device/htc/jewel" remote="github" revision="cm-10.2" />
<project name="CyanogenMod/android_device_htc_s4-common" path="device/htc/s4-common" remote="github" revision="cm-10.2" />
<project name="CyanogenMod/android_device_htc_msm8960-common" path="device/htc/msm8960-common" remote="github" revision="cm-10.2" />
<project name="CyanogenMod/android_kernel_htc_msm8960" path="kernel/htc/msm8960" remote="github" revision="cm-10.2" />
<!-- Add HTC Proprietary Files -->
<project name="TheMuppets/proprietary_vendor_htc" path="vendor/htc" remote="github" revision="cm-10.2" />
<!-- Add qcom-caf source for our phone -->
<project path="hardware/qcom/media-caf" name="SlimRoms/hardware_qcom_media-caf" remote="github" revision="jb4.3" />
<project path="hardware/qcom/display-caf" name="SlimRoms/hardware_qcom_display-caf" remote="github" revision="jb4.3" />
<project path="hardware/qcom/audio-caf" name="SlimRoms/hardware_qcom_audio-caf" remote="github" revision="jb4.3" />
</manifest>
Click to expand...
Click to collapse
Why SlimRoms qcom-caf when all those projects exist at OmniRom Github? The same goes for android_device_htc_msm8960-common.
These projects should be OmnRom's, because he's going to have enough problems as it is setting up the correct device and vendor trees.
numel007 said:
Alright repo sync with the new local_manifest.xml comes up with this error:
remote: Counting objects: 8, done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 6 (delta 2), reused 5 (delta 1)
Unpacking objects: 100% (6/6), done.
From https://github.com/omnirom/android
4a32d1c..f246d15 android-4.3 -> origin/android-4.3
project .repo/manifests/
Updating 4a32d1c..f246d15
Fast-forward
default.xml | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
fatal: remote github already exists with different attributes
Click to expand...
Click to collapse
Hmm so this either means that you edited something in the default.XML, but that error talks about the remote github existing with different attributes. So when you defined the remote in the local manifest, might be clashing with the manifest remote for github. Hopefully to fix you can just rrmove the <remote> line in the local manifest. I think. I'm not terribly experienced with all of this. Perhaps chasmodo can shed some light on that I know he's much more experience with all of this.
chasmodo said:
Why SlimRoms qcom-caf when all those projects exist at OmniRom Github? The same goes for android_device_htc_msm8960-common.
These projects should be OmnRom's, because he's going to have enough problems as it is setting up the correct device and vendor trees.
Click to expand...
Click to collapse
Oh I wasnt aware of that. I just found the sources of a ROM on his forums and put those in there, didn't even think about looking for the same trees on the omni GH. Again I'm not super experienced. So numel007, if there is a git in the omni GH matching any of the ones listed in the local manifest, put the omni one in instead. So as chasmodo said all of the qcom caf stuff and the device-msm8960.
Sent from my SGH-T999 using xda app-developers app
andrewnelson23 said:
Hmm so this either means that you edited something in the default.XML, but that error talks about the remote github existing with different attributes.
Click to expand...
Click to collapse
It doesn't mean he edited anything in the default.xml or manifest.xml. It probably means that the same qcom projects etc are already defined in the default/manifest, but he has added the different ones with the same attributes (project name and path) to his local_manifest.xm following your advice.
andrewnelson23 said:
Oh I wasnt aware of that.
Click to expand...
Click to collapse
Always check the target Rom Github before offering porting advice.
andrewnelson23 said:
In order to build an unofficial device, as I have gathered it:
First(after setting up the build environment, of course, which is easily demonstrated with a quick google search), you must create a local_manifest. Basically, when you repo sync, it downloads all of the files included in the manifest, which you received when you did repo init. However, your device files are not included in the manifest because it's unofficial (not supported). In order to get your device files to download with the repo sync, you create the local_manifest. To create a local_manifest,
in cmd,
cd omni (so you get into your rom directory)
mkdir .repo/local_manifests (creates a folder to put your local manifest in)
touch .repo/local_manifests/local_manifest.xml (creates the local manifest.xml)
Now go to your file explorer. open omni directory. there should be nothing, unless you've already repo synced. If you have already repo synced, no worries. press control+h. a hidden folder called .repo will appear. double click it. then >local_manifests> open local_manifest.xml. In this xml, you will need to put your device tree, your kernel tree, and your vendor tree. Additionally, you will need trees that contain common files with other devices. These are all able to be found by looking on your device forum. It looks as though you may have the vendor tree in your local_manifest right now. I have found the items that you need to add to your local_manifest. simply add this:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote name="github"
fetch="git://github.com/" />
<!-- CyanogenMod -->
<project name="CyanogenMod/android_device_htc_jewel" path="device/htc/jewel" remote="github" revision="cm-10.2" />
<project name="CyanogenMod/android_device_htc_s4-common" path="device/htc/s4-common" remote="github" revision="cm-10.2" />
<project name="CyanogenMod/android_device_htc_msm8960-common" path="device/htc/msm8960-common" remote="github" revision="cm-10.2" />
<project name="CyanogenMod/android_kernel_htc_msm8960" path="kernel/htc/msm8960" remote="github" revision="cm-10.2" />
<!-- Add HTC Proprietary Files -->
<project name="TheMuppets/proprietary_vendor_htc" path="vendor/htc" remote="github" revision="cm-10.2" />
<!-- Add qcom-caf source for our phone -->
<project path="hardware/qcom/media-caf" name="SlimRoms/hardware_qcom_media-caf" remote="github" revision="jb4.3" />
<project path="hardware/qcom/display-caf" name="SlimRoms/hardware_qcom_display-caf" remote="github" revision="jb4.3" />
<project path="hardware/qcom/audio-caf" name="SlimRoms/hardware_qcom_audio-caf" remote="github" revision="jb4.3" />
</manifest>
(end)
Save.
Now you repo sync. If you have never repo synced, it'll take a while. If you've already repo synced and just added the local_manifest, it shouldn't take long at all.
Next you have to edit the device tree in order to get it to build and add a line to vendorsetup.sh. However, I have not been able to look at what changes need to be made in order to get it to work. I was gonna take a look at it all on sunday. Maybe someone else can step in here to tell him what he needs to do?
Sent from my TF300T using xda app-developers app
Click to expand...
Click to collapse
Hey Thanks for working on this I am going through trying to get a build out for the One S and running into all sorts of build errors when I have some time over the weekend I will compare local_manifests and see what I missed.
numel007 said:
Alright repo sync with the new local_manifest.xml comes up with this error:
remote: Counting objects: 8, done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 6 (delta 2), reused 5 (delta 1)
Unpacking objects: 100% (6/6), done.
From https://github.com/omnirom/android
4a32d1c..f246d15 android-4.3 -> origin/android-4.3
project .repo/manifests/
Updating 4a32d1c..f246d15
Fast-forward
default.xml | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
fatal: remote github already exists with different attributes
Click to expand...
Click to collapse
Remove
<remote name="github"
fetch="https://github.com/" />
From all your local manifests. (Or rename it from github to something else)
1. these steps, I can follow them for my lg g2 to hookup cm10.2 source with Omnirom?
2. Also I got propriatory blobs from the cm10.2 rom, However I notice many more on stock rom, anybody know if I can use all of these or explicitly the ones from the cm10.2 rom?
3. There are also more in the cm rom, can I use all the blobs in the folders or only the ones on the propriatory blob txt?
4. what about the symlinked propriatary files in stock rom folders? Ignore those?
Sent from my LG-D802
This is what I get guess I will have to go through it and sort out the missing things....
Which would you like? [aosp_arm-eng] 16
build/core/product_config.mk:222: *** Can not locate config makefile for product "omni_ville". Stop.
Traceback (most recent call last):
File "build/tools/roomservice.py", line 287, in
fetch_device(device)
File "build/tools/roomservice.py", line 255, in fetch_device
git_data = search_github_for_device(device)
File "build/tools/roomservice.py", line 68, in search_github_for_device
check_repo_exists(git_data)
File "build/tools/roomservice.py", line 52, in check_repo_exists
"roomservice".format(device, android_team))
Exception: ville not found in omnirom Github, exiting roomservice
build/core/product_config.mk:222: *** Can not locate config makefile for product "omni_ville". Stop.
** Don't have a product spec for: 'omni_ville'
** Do you have the right repo manifest?
mo976 said:
This is what I get guess I will have to go through it and sort out the missing things....
Which would you like? [aosp_arm-eng] 16
build/core/product_config.mk:222: *** Can not locate config makefile for product "omni_ville". Stop.
Traceback (most recent call last):
File "build/tools/roomservice.py", line 287, in
fetch_device(device)
File "build/tools/roomservice.py", line 255, in fetch_device
git_data = search_github_for_device(device)
File "build/tools/roomservice.py", line 68, in search_github_for_device
check_repo_exists(git_data)
File "build/tools/roomservice.py", line 52, in check_repo_exists
"roomservice".format(device, android_team))
Exception: ville not found in omnirom Github, exiting roomservice
build/core/product_config.mk:222: *** Can not locate config makefile for product "omni_ville". Stop.
** Don't have a product spec for: 'omni_ville'
** Do you have the right repo manifest?
Click to expand...
Click to collapse
Sounds like you have not added the omni_ville.mk in the vendor/omini/products folder. Add it by copying one that is already in their and edit it for your device
Sent from my Blade III using xda app-developers app
robt77 said:
Sounds like you have not added the omni_ville.mk in the vendor/omini/products folder. Add it by copying one that is already in their and edit it for your device
Click to expand...
Click to collapse
Vendor/omni/products folder does not exist. Device.mk files belong in /device/manufacturer/device folder.
chasmodo said:
Vendor/omni/products folder does not exist. Device.mk files belong in /device/manufacturer/device folder.
Click to expand...
Click to collapse
Do i need to create the above path? For me no manifacturer folder under device
matrixzone said:
Do i need to create the above path? For me no manifacturer folder under device
Click to expand...
Click to collapse
It SHOULD create it when you brunch your device. Mine auto-downloaded and created grouper, tilapia, and manta.
dibblebill said:
It SHOULD create it when you brunch your device. Mine auto-downloaded and created grouper, tilapia, and manta.
Click to expand...
Click to collapse
I am creating for d2att which is not currently supported
Sent from my SAMSUNG-SGH-I747 using Tapatalk

Long Time User, First Time Builder

Hey guys, I'm trying to tackle Liquid ROM after I found out someone has successfully built the ROM for our device. He shared his roomservice.xml and I spent last night syncing the repos for Liquid ROM. However, this morning I went to run the "lunch" command and got this:
Code:
You're building on Linux
Lunch menu... pick a combo:
35. liquid_klte-userdebug
Which would you like? [aosp_arm-eng] 35
ls: cannot access device/*/klte/liquid.mk: No such file or directory
build/core/product_config.mk:231: *** Can not locate config makefile for product "liquid_klte". Stop.
File "build/tools/roomservice.py", line 113
except IOError, ES.ParseError:
^
SyntaxError: invalid syntax
ls: cannot access device/*/klte/liquid.mk: No such file or directory
build/core/product_config.mk:231: *** Can not locate config makefile for product "liquid_klte". Stop.
** Don't have a product spec for: 'liquid_klte'
** Do you have the right repo manifest?
For simplicity, this is my first time compiling, I'm using Arch Linux, and the only file I have to fill in the gaps is the roomservice.xml I'm pasting below:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="CyanogenMod/android_hardware_samsung" path="hardware/samsung" remote="gh" revision="cm-11.0" />
<project name="Team-Hydra/android_vendor_samsung" path="vendor/samsung" remote="gh" revision="cm-11.0" />
<project name="Team-Hydra/android_kernel_samsung_klte" path="kernel/samsung/klte" remote="gh" revision="cm-11.0" />
<project name="CyanogenMod/android_device_samsung_msm8974-common" path="device/samsung/msm8974-common" remote="gh" revision="cm-11.0" />
<project name="CyanogenMod/android_device_samsung_qcom-common" path="device/samsung/qcom-common" remote="gh" revision="cm-11.0" />
<project name="LiquidSmooth-Devices/android_device_qcom_common" path="device/qcom/common" remote="gh" revision="kitkat" />
<project name="android_hardware_qcom_display-caf-new" path="hardware/qcom/display-caf-new" remote="ls" revision="kitkat" />
<project name="android_hardware_qcom_media-caf-new" path="hardware/qcom/media-caf-new" remote="ls" revision="kitkat" />
<project name="Team-Hydra/android_device_samsung_klte" path="device/samsung/klte" remote="gh" revision="cm-11.0" />
<project name="Team-Hydra/android_device_samsung_klte-common" path="device/samsung/klte-common" remote="gh" revision="cm-11.0" />
</manifest>
So my question is, should this xml file be what substitutes my "lunch" choice and am I missing a step to get this thing started? I appreciate any help you guys can offer; I know this can be built successfully I already ran a good build. I just have no desire to Kang work and post it here when I can learn to make my own. Thanks for any guidance you guys have to offer !

[GUIDE] Build crDroid ROM from source

Because I saw some requests for a build guide for crDroid (ROM with many added features based on CM) I decided to make one. Please report if it worked. If you have errors I will try my best to resolve them.
Please read everything carefully. Although I tested this some times I DO NOT guarantee that this GUIDE is error free. Will try to keep this updated when the manifest or anything changes.
This guide has been tested on Ubuntu 14.04.1
Requirements are:
More or less recent computer [I got a Xeon E3-1230v3 (equal to an i7-4770) and 16gigs of RAM and a clean build takes about 40minutes on my HDD for me.]
At least 40GB of HDD space (SSD will speed up the build noticeably, just as more RAM does)
Linux of course (64 bit Ubuntu/debian base for having apt-get functionality. A VM also works but very slooooooooooow.)
Patience... (Donwload size is ~13-15GB and compiling takes it's time)
Some very basic linux terminal skills will make things easier but it should go perfectly well without them. :cyclops:​
1. First of all we need to make sure you've got all the packages installed you need for building:
Open a terminal and insert the following:
Code:
sudo apt-get install bison build-essential curl flex git gnupg gperf libesd0-dev libncurses5-dev libsdl1.2-dev libwxgtk2.8-dev libxml2 libxml2-utils lzop openjdk-6-jdk openjdk-6-jre pngcrush schedtool squashfs-tools xsltproc zip zlib1g-dev g++-multilib gcc-multilib lib32ncurses5-dev lib32readline-gplv2-dev lib32z1-dev
2. If you don't know if you've installed repo yet do the step in the spoiler:
Code:
mkdir -p ~/bin
Code:
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
Code:
chmod a+x ~/bin/repo
Code:
source ~/.profile
3. Now let's create the folder where your crDroid files will be saved:
Code:
mkdir -p ~/android/crdroid
4. The next step is to initialize CMs repo in your folder as crDroid is based on CM:
Code:
cd ~/android/crdroid/
Code:
repo init -u https://github.com/CyanogenMod/android.git -b cm-11.0
5. Now enable hidden files in your file explorer by opening it and pressing ctrl+h. Then navigate to your crdroid folder and then head into the hidden .repo folder. There you need to create a new folder called "local_manifests"(without quotes!). Navigate into this folder and create an empty file called "roomservice.xml"(without quotes!)
6. Open it in a editor and insert the following and save it:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="TheMuppets/proprietary_vendor_oneplus" path="vendor/oneplus" remote="github" />
<project name="TheMuppets/proprietary_vendor_oppo" path="vendor/oppo" remote="github" />
<project name="cristianomatos/android_device_oneplus_bacon" path="device/oneplus/bacon" remote="github" revision="cm-11.0" />
<project name="cristianomatos/android_device_oppo_msm8974-common" path="device/oppo/msm8974-common" remote="github" revision="cm-11.0" />
<project name="CyanogenMod/android_device_oppo_common" path="device/oppo/common" remote="github" />
<project name="CyanogenMod/android_kernel_oneplus_msm8974" path="kernel/oneplus/msm8974" remote="github" />
<project name="CyanogenMod/android_hardware_qcom_display-caf-new" path="hardware/qcom/display-caf-new" remote="github" />
<project name="CyanogenMod/android_hardware_qcom_media-caf-new" path="hardware/qcom/media-caf-new" remote="github" />
<project name="CyanogenMod/android_frameworks_opt_connectivity" path="frameworks/opt/connectivity" remote="github" />
<project name="CyanogenMod/android_device_qcom_common" path="device/qcom/common" remote="github" />
<remove-project name="CyanogenMod/android_build" />
<project path="build" name="cristianomatos/android_build" groups="pdk" >
<copyfile src="core/root.mk" dest="Makefile" />
</project>
<remove-project name="CyanogenMod/android_vendor_cm" />
<project name="cristianomatos/android_vendor_cm" path="vendor/cm" remote="github" revision="cm-11.0" />
<remove-project name="CyanogenMod/android_packages_apps_CMAccount" />
<project name="cristianomatos/android_packages_apps_CMAccount" path="packages/apps/CMAccount" remote="github" revision="cm-11.0" />
<remove-project name="CyanogenMod/android_packages_apps_DSPManager" />
<project name="cristianomatos/android_packages_apps_DSPManager" path="packages/apps/DSPManager" remote="github" revision="cm-11.0" />
<remove-project name="CyanogenMod/android_packages_apps_Dialer" />
<project name="cristianomatos/android_packages_apps_Dialer" path="packages/apps/Dialer" remote="github" revision="cm-11.0" />
<remove-project name="CyanogenMod/android_packages_providers_DownloadProvider" />
<project name="cristianomatos/android_packages_providers_DownloadProvider" path="packages/providers/DownloadProvider" remote="github" revision="cm-11.0" />
<remove-project name="CyanogenMod/android_packages_apps_InCallUI" />
<project name="cristianomatos/android_packages_apps_InCallUI" path="packages/apps/InCallUI" remote="github" revision="cm-11.0" />
<remove-project name="CyanogenMod/android_packages_services_Telephony" />
<project name="cristianomatos/android_packages_services_Telephony" path="packages/services/Telephony" remote="github" revision="cm-11.0" />
<remove-project name="CyanogenMod/android_packages_apps_Mms" />
<project name="cristianomatos/android_packages_apps_Mms" path="packages/apps/Mms" remote="github" revision="cm-11.0" />
<remove-project name="CyanogenMod/android_packages_providers_MediaProvider" />
<project name="cristianomatos/android_packages_providers_MediaProvider" path="packages/providers/MediaProvider" remote="github" revision="cm-11.0" />
<remove-project name="CyanogenMod/android_system_media" />
<project name="cristianomatos/android_system_media" path="system/media" remote="github" revision="cm-11.0" />
<remove-project name="CyanogenMod/android_frameworks_base" />
<project name="cristianomatos/android_frameworks_base" path="frameworks/base" remote="github" revision="cm-11.0" />
<remove-project name="CyanogenMod/android_packages_apps_Settings" />
<project name="cristianomatos/android_packages_apps_Settings" path="packages/apps/Settings" remote="github" revision="cm-11.0" />
<project name="cristianomatos/android_packages_apps_ScreenRecorder" path="packages/apps/ScreenRecorder" remote="github" revision="cm-11.0" />
<project name="cristianomatos/android_frameworks_opt_cards" path="frameworks/opt/cards" remote="github" revision="slim-recent" />
<remove-project name="CyanogenMod/android_packages_apps_CMUpdater" />
</manifest>
7. Now go back to your terminal and start sync:
Code:
cd ~/android/crdroid/
Code:
repo sync
This can take a looooong time!​
8. Don't forget to get the prebuilt apps!
Code:
cd ~/android/crdroid/vendor/cm/
Code:
./get-prebuilts
9. Setup the build environment:
Code:
cd ~/android/crdroid/
Code:
. build/envsetup.sh
Code:
breakfast bacon
10. Finally start the build!
Code:
brunch bacon
When it finished building, the zip file is located at ~/android/crdroid/out/target/product/bacon/cm-11-builddate-UNOFFICIAL-bacon.zip. You can enable ccache(use: http://wiki.cyanogenmod.org/w/Build_for_bacon for info) to speed up subsequent builds.
It's normal that the bootanimation is the CM one instead of the crDroid one (simply replace it with one from an official crDroid build).
Also your crDroid version in about phone will show unknown.
Have fun with your own crDroid build! It would be very kind if you could leave a thanks because this took me quite a while to make:angel::good:
I can't wait to build this and try it out! How much memory does it all take? I have like 150 gb free. That should be enough right?
amjc14 said:
I can't wait to build this and try it out! How much memory does it all take? I have like 150 gb free. That should be enough right?
Click to expand...
Click to collapse
About 30-40gb should be enough. Please report if it worked for you or if you encounter errors also report them
Will update this when I have time. To make it cleaner looking and better applicable on fresh installs. Don't expect it to be soon pretty busy ATM:silly:
So if I made a build using this guide, would it have the most up to date CM updates at the time of the build. Basically, is this a way to get newer CM updates without waiting for crDroid to make an updated build or would this just build a copy of the latest crDroid that was released?
Thanks
530farm said:
So if I made a build using this guide, would it have the most up to date CM updates at the time of the build. Basically, is this a way to get newer CM updates without waiting for crDroid to make an updated build or would this just build a copy of the latest crDroid that was released?
Thanks
Click to expand...
Click to collapse
Exactly. You will have crdroid on the newest cm base but without the boot animation(just replace it in the zip)
Nice guide to build a really nice Rom.
Can you tell me what i have to change in the local manifest in order to have another kernel included ? I try to build a Rom with ak kernel build in and add it also to local manifest but i still get the stock kernel. If i can solve it again then i would try again.
störte said:
Nice guide to build a really nice Rom.
Can you tell me what i have to change in the local manifest in order to have another kernel included ? I try to build a Rom with ak kernel build in and add it also to local manifest but i still get the stock kernel. If i can solve it again then i would try again.
Click to expand...
Click to collapse
I don't know about the kernels sorry. Also tried to include ak in the build but didn't work.
Ah so i am not alone. Then i will search further. Will post when i find a way to add
Do you see any problems using this guide to build w/ Manjaro ( Arch based distro)? If i just change the apt-get of ubuntu to pacman -S, for installing all those dependancies, then everything else should be the same?
530farm said:
Do you see any problems using this guide to build w/ Manjaro ( Arch based distro)? If i just change the apt-get of ubuntu to pacman -S, for installing all those dependancies, then everything else should be the same?
Click to expand...
Click to collapse
If the ubuntu/debian repos are available in pacman it should work.
wow, im gonna try this later.
thanks!
Ok made many updates to the GUIDE to make it look cleaner and easier to understand.
om22 said:
Ok made many updates to the GUIDE to make it look cleaner and easier to understand.
Click to expand...
Click to collapse
you have missed "apt-get" for installing bison build-essential ....
BHH
buzzqw said:
you have missed "apt-get" for installing bison build-essential ....
BHH
Click to expand...
Click to collapse
Thanks man just wanted to make sure I didn't miss any packages and forgot to add it after that.
*FIXED*
Just did it again step by step and confirmed working perfectly now!
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
I give it a try just now doing repo sync.
I observe that there are some messages saying 404 error.
like this
curl: (22) The requested URL returned error: 404 Not Found
Server does not provide clone.bundle; ignoring.
störte said:
I give it a try just now doing repo sync.
I observe that there are some messages saying 404 error.
like this
curl: (22) The requested URL returned error: 404 Not Found
Server does not provide clone.bundle; ignoring.
Click to expand...
Click to collapse
That's OK as long as the sync doesn't stop because of the errors. Some obsolete repos I think. I also got them.
Another Question
I like to add the ak kernel into my build instead of the Cm
Is it ok if i include in my roomservice file this line :
<project path="kernel/oneplus/bacon" name="anarkia1976/AK-OnePone" remote="gh" revision="ak-11.0-stable" />
?
Which do i have to remove in order to have the ak kernel used ?
Made all step by step but no zip
Found this on the end line in terminal error 9
Will start over

[Guide] How to build your own Cyanogenmod 11 for d850/d851/d852/d855/vs985/ls990

Now model vs985 and d850 can get official version at download.cyanogenmod.com
Support model for this method are d850/d851/d852/d855/vs985/ls990
Thank you for source code from @invisiblek (https://github.com/invisiblek)
Thank you for original thread from @Raum1807 (http://forum.xda-developers.com/nexus-4/general/guide-cm11-how-to-build-cyanogenmod-11-t2515305)
Thank you for original manifest from @Skin1980 (https://github.com/Skin1980/local_manifests)
Overview
I. Preparation
II. Installation of the required packages
III. Installing Java
IV. The sources
V. Building the ROM
VI. Rebuilding with newest sources
I. Preparation
Things you need for building:
A computer
An internet connection
An open mind
Time
Patience
First of all, you need a running up-to-date Ubuntu/Linux system. I am using Ubuntu 14.04 64-bit.
Use the terminal to make the steps. A terminal window can be opened by pressing Ctrl+Alt+T. Every single command for the terminal is marked with a $ sign. Just paste every command (without the $ sign) to your terminal window and there shouldn't be any problem.
IMPORTANT: INSTALL EVERYTHING AS A NORMAL USER. DON'T INSTALL AS ROOT!
II. Installation of the required packages (Ubuntu 14.04 64-bit)
Install packages:
Code:
$ sudo apt-get install bison build-essential curl flex \
g++-multilib gcc-multilib git-core gnupg gperf \
lib32ncurses5-dev lib32readline-gplv2-dev lib32z1-dev \
libesd0-dev libncurses5-dev libsdl1.2-dev \
libwxgtk2.8-dev libxml2 libxml2-utils lzop \
openjdk-6-jdk openjdk-6-jre pngcrush schedtool \
squashfs-tools xsltproc zip zlib1g-dev
III. Installing Java
You need a version 6 Java Development Kit for building CM11.0. Usually, the SUN JDK 6 is recommended. But there is another way: you can use the OpenJDK 6. When you installed the required packages as described above, you will just need to configure your Java installation.
Check your Java version:
Code:
$ java -version
Verify the symlinks. Javac, Java, Javaws, Javadoc, Javah, Javap and Jar should all point to the right Java location and version:
Code:
$ ls -la /etc/alternatives/java* && ls -la /etc/alternatives/jar
If they are pointing to the wrong versions you have to change that to OpenJDK6.
Select the default Java version for your system:
Code:
$ sudo update-alternatives --config javac
$ sudo update-alternatives --config java
$ sudo update-alternatives --config javaws
$ sudo update-alternatives --config javadoc
$ sudo update-alternatives --config javah
$ sudo update-alternatives --config javap
$ sudo update-alternatives --config jar
That's it.
IV. The sources
Install repo:
Repo is a tool that makes it quite easy to download and maintain the sources of Cyanogenmod.
Code:
$ mkdir ~/bin
$ PATH=~/bin:$PATH
$ cd ~/bin
$ curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
Create the working directory:
Code:
$ mkdir ~/cm11
$ cd ~/cm11
Initialize Repo:
Code:
$ repo init -u git://github.com/CyanogenMod/android.git -b cm-11.0
and enter your credentials.
Download the sources:
Code:
$ repo sync
Wait until it's finished - takes some time to download the hefty 12 GB of source code!
Have a break, have a KitKat!
If the process hangs use Ctrl+C to break out of it and resume the download with another
Code:
$ repo sync
If you are running into a lot of syncing errors the reason might be that the 'repo sync' command is establishing four threads automatically. This might be too much. So try to change the command to run with one thread only by using
Code:
$ repo sync -j1
Initialize the environment
Code:
$ . build/envsetup.sh
Obtain the proprietary files:
First get two missing repositories for the Nexus 4 by running
Code:
$ breakfast <your model>
Then create a file with the name local_manifest.xml in the local_manifests directory. To see this directory, you have to press Ctrl-H in your file manager.
Use this code
Code:
$ gedit ~/cm11/.repo/local_manifests/local_manifest.xml
Please make sure you copy and paste code with your correct model
Paste the following lines to the editor
D850
Code:
<manifest>
<!-- D850 -->
<project path="device/lge/d850" name="invisiblek/android_device_lge_d850" remote="github" revision="cm-11.0" />
<project path="device/lge/g3-common" name="invisiblek/android_device_lge_g3-common" remote="github" revision="cm-11.0" />
<project path="kernel/lge/g3" name="invisiblek/android_kernel_lge_g3" remote="github" revision="cm-11.0" />
<project path="vendor/lge" name="invisiblek/proprietary_vendor_lge" remote="github" revision="cm-11.0" />
<!-- CyanogenMod -->
<project path="device/qcom/common" name="CyanogenMod/android_device_qcom_common" remote="github" revision="cm-11.0" />
<project path="hardware/qcom/display-caf-new" name="CyanogenMod/android_hardware_qcom_display-caf-new" remote="github" revision="cm-11.0" />
<project path="hardware/qcom/media-caf-new" name="CyanogenMod/android_hardware_qcom_media-caf-new" remote="github" revision="cm-11.0" />
</manifest>
D851
Code:
<manifest>
<!-- D851 -->
<project path="device/lge/d851" name="invisiblek/android_device_lge_d851" remote="github" revision="cm-11.0" />
<project path="device/lge/g3-common" name="invisiblek/android_device_lge_g3-common" remote="github" revision="cm-11.0" />
<project path="kernel/lge/g3" name="invisiblek/android_kernel_lge_g3" remote="github" revision="cm-11.0" />
<project path="vendor/lge" name="invisiblek/proprietary_vendor_lge" remote="github" revision="cm-11.0" />
<!-- CyanogenMod -->
<project path="device/qcom/common" name="CyanogenMod/android_device_qcom_common" remote="github" revision="cm-11.0" />
<project path="hardware/qcom/display-caf-new" name="CyanogenMod/android_hardware_qcom_display-caf-new" remote="github" revision="cm-11.0" />
<project path="hardware/qcom/media-caf-new" name="CyanogenMod/android_hardware_qcom_media-caf-new" remote="github" revision="cm-11.0" />
</manifest>
D852
Code:
<manifest>
<!-- D852 -->
<project path="device/lge/d852" name="invisiblek/android_device_lge_d852" remote="github" revision="cm-11.0" />
<project path="device/lge/g3-common" name="invisiblek/android_device_lge_g3-common" remote="github" revision="cm-11.0" />
<project path="kernel/lge/g3" name="invisiblek/android_kernel_lge_g3" remote="github" revision="cm-11.0" />
<project path="vendor/lge" name="invisiblek/proprietary_vendor_lge" remote="github" revision="cm-11.0" />
<!-- CyanogenMod -->
<project path="device/qcom/common" name="CyanogenMod/android_device_qcom_common" remote="github" revision="cm-11.0" />
<project path="hardware/qcom/display-caf-new" name="CyanogenMod/android_hardware_qcom_display-caf-new" remote="github" revision="cm-11.0" />
<project path="hardware/qcom/media-caf-new" name="CyanogenMod/android_hardware_qcom_media-caf-new" remote="github" revision="cm-11.0" />
</manifest>
D855
Code:
<manifest>
<!-- D855 -->
<project path="device/lge/d855" name="invisiblek/android_device_lge_d855" remote="github" revision="cm-11.0" />
<project path="device/lge/g3-common" name="invisiblek/android_device_lge_g3-common" remote="github" revision="cm-11.0" />
<project path="kernel/lge/g3" name="invisiblek/android_kernel_lge_g3" remote="github" revision="cm-11.0" />
<project path="vendor/lge" name="invisiblek/proprietary_vendor_lge" remote="github" revision="cm-11.0" />
<!-- CyanogenMod -->
<project path="device/qcom/common" name="CyanogenMod/android_device_qcom_common" remote="github" revision="cm-11.0" />
<project path="hardware/qcom/display-caf-new" name="CyanogenMod/android_hardware_qcom_display-caf-new" remote="github" revision="cm-11.0" />
<project path="hardware/qcom/media-caf-new" name="CyanogenMod/android_hardware_qcom_media-caf-new" remote="github" revision="cm-11.0" />
</manifest>
VS985
Code:
<manifest>
<!--VS985 -->
<project path="device/lge/vs985" name="invisiblek/android_device_lge_vs985" remote="github" revision="cm-11.0" />
<project path="device/lge/g3-common" name="invisiblek/android_device_lge_g3-common" remote="github" revision="cm-11.0" />
<project path="kernel/lge/g3" name="invisiblek/android_kernel_lge_g3" remote="github" revision="cm-11.0" />
<project path="vendor/lge" name="invisiblek/proprietary_vendor_lge" remote="github" revision="cm-11.0" />
<!-- CyanogenMod -->
<project path="device/qcom/common" name="CyanogenMod/android_device_qcom_common" remote="github" revision="cm-11.0" />
<project path="hardware/qcom/display-caf-new" name="CyanogenMod/android_hardware_qcom_display-caf-new" remote="github" revision="cm-11.0" />
<project path="hardware/qcom/media-caf-new" name="CyanogenMod/android_hardware_qcom_media-caf-new" remote="github" revision="cm-11.0" />
</manifest>
LS990
Code:
<manifest>
<!--LS990 -->
<project path="device/lge/ls990" name="invisiblek/android_device_lge_ls990" remote="github" revision="cm-11.0" />
<project path="device/lge/g3-common" name="invisiblek/android_device_lge_g3-common" remote="github" revision="cm-11.0" />
<project path="kernel/lge/g3" name="invisiblek/android_kernel_lge_g3" remote="github" revision="cm-11.0" />
<project path="vendor/lge" name="invisiblek/proprietary_vendor_lge" remote="github" revision="cm-11.0" />
<!-- CyanogenMod -->
<project path="device/qcom/common" name="CyanogenMod/android_device_qcom_common" remote="github" revision="cm-11.0" />
<project path="hardware/qcom/display-caf-new" name="CyanogenMod/android_hardware_qcom_display-caf-new" remote="github" revision="cm-11.0" />
<project path="hardware/qcom/media-caf-new" name="CyanogenMod/android_hardware_qcom_media-caf-new" remote="github" revision="cm-11.0" />
</manifest>
Save the file.
Run
Code:
$ repo sync
again to get the files needed.
Download the necessary prebuilts from cyanogenmod by running
Code:
$ cd ~/cm11/vendor/cm
$ . get-prebuilts
$ croot
And you're done!
V. Building the ROM
Now build it:
Code:
$ brunch <your model>
change <your model> to d850/d851/d852/d855/vs985/ls990
And the building process starts. Now have patience. Building takes around half an hour on fast systems and a lot more on older and slower machines.
When everything worked as it should you will find your new ROM-image in ~/cm11/out/target/product/<your model>
It is called cm-11-DATE-UNOFFICIAL-<your model>-zip.
Before you flash you need to bump it first!
you can get bump from https://github.com/CyboLabs/Open_Bump
go to /cm11/out/target/product/<your model>/
copy boot.img and open_bump in same folder and run
Code:
python open_bump.py boot.img
you will get boot_bumped.img rename it to boot.img and push into "cm-11-DATE-UNOFFICIAL-<your model>-zip"
Now You can flash it via CWM/TWRP as usual.
VI. Rebuilding with newest sources
Whenever you like to update your sources and build a new version you have to run these four simple commands:
Code:
$ cd ~/cm11
$ repo sync
$ . build/envsetup.sh
$ brunch <your model>
Compiling takes less time than it took for creating the ROM the first time because it's only building new parts while reusing old parts that haven't changed.
and don't forgot bump boot.img
Happy building!
CM11 is not support for F400 korean models. Can you port it to F400 korean models? Thanks!
error
cant breakfast or brunch for D852
EDIT....
in the manifest copy paste for d852 there is a typo change the 851 to 852
LS990 issues
I am trying to compile for ls990 sprint g3
Can someone explain this part of the instructions to me? It says to get repositories for nexus 4, but then says "breakfast <your model>. I have tried entering my model "ls990" and it fetches a bunch of stuff. However, then when I "gedit ~/cm11/.repo/local_manifests/local_manifest.xml" and add the ls990 entries, it gives me a duplication error when I try to repo sync. I believe meaning that it already has downloaded the ls990 code from my "breakfast ls990" command.
Am I supposed to be doing a "breakfast mako" for the nexus 4? Please help. Been trying to compile this for a couple of days now.
----------
First get two missing repositories for the Nexus 4 by running
Code:
$ breakfast <your model>
-------------
Won't Compile - LS990
Ok, so after some research I realize that my above question was probably a typo. The problem is that when I create the local_manifest.xml file and add the ls990 info into it, when I do a repo sync I get fatal: duplicate path device/lge/ls990 in /home/mo1991/cm11/.repo/manifest.xml
I am not sure why this happens, perhaps the stuff in the manifest has now been officially added to the cyanogen repo - guessing here - and perhaps is not needed??? Or incorrect
Here is the edit command for the file I am talking about:
gedit ~/cm11/.repo/local_manifests/local_manifest.xml
Anyway, if I get rid of the manifest.xml file and brunch ls990 compile fails with
-------------------
make: *** No rule to make target `/home/mo1991/cm11/out/target/product/ls990/obj/lib/libtime_genoff.so', needed by `/home/mo1991/cm11/out/target/product/ls990/obj/SHARED_LIBRARIES/libandroid_runtime_intermediates/LINKED/libandroid_runtime.so'. Stop.
-----------------
Any help would be appreciated. Thanks.
You're correct that most repos in the local_manifest are now no longer necessary because it's officially supported. However, in order to get the proprietary blobs (which is what it's failing on) you still need to inlcude:
<project path="vendor/lge" name="invisiblek/proprietary_vendor_lge" remote="github" revision="cm-11.0" />
Or the one from TheMuppets. Alternatively, you could extract your own, but getting it from someone else is much easier
cre4per said:
cant breakfast or brunch for D852
EDIT....
in the manifest copy paste for d852 there is a typo change the 851 to 852
Click to expand...
Click to collapse
I have the same issue for d852
Any idea ?
Compiled but no sim card / bluetooth
Ok, I got it to compile by simply changing the ~/cm11/.repo/local_manifests/local_manifest.xml file to only include the proprietary blobs in the local_manifest.xml as per below.
<manifest>
<!--LS990 -->
<project path="vendor/lge" name="invisiblek/proprietary_vendor_lge" remote="github" revision="cm-11.0" />
</manifest>
Now it compiles. But I get no sim card thus no network. Also bluetooth appears to be broken. I know that jholtom at least had radio working, so I'm rying to manually add his changes to my source tree and recompile, but I'm really not sure if this is the right way to do it. On the bright side, I did get the rom to compile, bump, and boot up, so I"m further along than before
Thanks for the help.
Okay so, i have a small problem, let me explain.
The first time i did everything accordingly and everything worked as planned, booted, everything works fine. In fact, i'm running it right now, very stable and so on.
But when i'm trying to update the zip with all the new stuff, i get a very annoying error that i can't get rid of. And i don't know why it does that.
make: *** No rule to make target `device/lge/g3-common/configs/mixer_paths_qcwcn.xml', needed by `/home/android/cm11/out/target/product/d855/system/etc/mixer_paths.xml'. Stop.
make: *** Waiting for unfinished jobs..
Click to expand...
Click to collapse
It never did that when i first compiled it. Bear in mind that my linux knowledge is really limited, but i'm trying as hard as possible to understand where the errors comes from and stuff, but right now i'm stumped, can't get it to update it.
This happens when i "brunch d855", dunno why.
Thanks in advance.
PS: I'm running Builduntu inside of a VM, if that might help.
If you have previously successfully built, then try running "repo sync" again and then build. If that fails, try
Code:
repo forall -vc "git reset --hard"

Build from Source Error

Hi,
I was following this tutorial " http://forum.xda-developers.com/chef-central/android/guide-android-rom-development-t2814763" and I am having trouble in building CM-12.1.
I created a directory "local_manifests" under ".repo" folder with "local_manifest.xml file". The file includes the below:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project path="device/samsung/s3ve3g" name="MSM8226-Samsung/android_device_samsung_s3ve3g" remote="github" revision="cm-12.1" />
<project path="vendor/samsung/s3ve3g" name="MSM8226-Samsung/android_vendor_samsung_s3ve3g" remote="github" revision="cm-12.1" />
<project path="kernel/samsung/s3ve3g" name="MSM8226-Samsung/android_kernel_samsung_s3ve3g" remote="github" revision="cm-12.1" />
</manifest>
Once I did that, I ran "repo sync" and everything went fine. After that I wrote ". build /envsetup.sh" and ran fine too. When I ran "brunch s3ve3g" I am getting the below error:
including vendor/cm/vendorsetup.sh
build/core/product_config.mk:239: *** _nic.PRODUCTS.[[device/samsung/s3ve3g/cm.mk]]: "device/samsung/msm8226-common/msm8226.mk" does not exist. Stop.
Device s3ve3g not found. Attempting to retrieve device repository from CyanogenMod Github (http://github.com/CyanogenMod).
Found repository: android_device_samsung_s3ve3g
Default revision: cm-12.1
Checking branch info
Default revision cm-12.1 not found in android_device_samsung_s3ve3g. Bailing.
Branches found:
cm-12.0
Use the ROOMSERVICE_BRANCHES environment variable to specify a list of fallback branches.
build/core/product_config.mk:239: *** _nic.PRODUCTS.[[device/samsung/s3ve3g/cm.mk]]: "device/samsung/msm8226-common/msm8226.mk" does not exist. Stop.
** Don't have a product spec for: 'cm_s3ve3g'
** Do you have the right repo manifest?
Can someone point me to the right direction please? Thank you
Yeah I can help you contact me on Hangouts or Telegram

Categories

Resources