Hello, I'm trying to build cm 13 caf rom myself (i have never done it before) and I'm following this guide. I have done everything to the step "download the source code" from https://github.com/CyanogenMod/android.git. Now I should "Prepare the device-specific code", but the guide is for hammerhead CM (non-caf) and, if I'm right, I should add some local_manifests but I have no idea of how to do this. (in fact if I type $ breakfast hammerheadcaf it starts downloading and then it says
** Don't have a product spec for: 'cm_hammerheadcaf'
** Do you have the right repo manifest?)
Can anyone explain it to me, please?
Hello apon97!
You can search the CAF thread a bit - a lot of question regarding building CyanogenMod for hammerheadcaf have been already covered there. However, the thread is huge and searching it is a pain in the b*tt sometimes so I'll try to help you here.
You have to know the following:
Downloading the source code will 'only' download the default projects. This usually takes a few hours to download depending on your internet connection. However, to build for a specific device (hammerheadcaf in this case) you also have to get two more things: It's dependencies (device- and kernel-tree) and the vendor proprietary files - usually simplified as 'blobs'.
So after you've downloaded the source code you don't have any local manifests. A simple 'breakfast hammerheadcaf' will look for cm.dependencies in the device-tree and automagically add these to your default local manifest (called 'roomservice.xml').
The proprietary stuff has to be manually added to the local manifest. Just open up /SOURCE/.repo/local_manifests.xml and you should see that the kernel and device tree is already there (because you breakfasted...). Now add another line for the blobs. These can be found on TheMuppets: github.com/TheMuppets/proprietary_vendor_lge
So your local manifest 'roomservice.xml' should look something similar to this:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="CyanogenMod/android_device_lge_hammerheadcaf" path="device/lge/hammerheadcaf" remote="github" />
<project name="CyanogenMod/android_kernel_lge_hammerhead" path="kernel/lge/hammerhead" remote="github" revision="cm-13.0-caf" />
<project name="CyanogenMod/android_device_qcom_common" path="device/qcom/common" remote="github" />
<project name="TheMuppets/proprietary_vendor_lge" path="vendor/lge" remote="github" />
</manifest>
PS: myfluxi updated the proprietary files for hammerheadcaf on his personal GitHub. You're free to use this project instead if you want to be up-to-date. However, he says that we don't need necessarily up-to-date blobs. Then the last project would look like this:
Code:
<project name="myfluxi/proprietary_vendor_lge" path="vendor/lge" remote="github" />
Now you have everything set up and ready to build CM13 CAF for the Nexus 5!
You don't have to go through this everytime you want to build. Next time just use
'repo sync'
'source build/envsetup.sh'
Optionally 'make clean' or 'make clobber' <- This will delete stuff from previous builds. Doing a clean build will take longer...
and finally...
'brunch hammerheadcaf'
Much fun building!
Everything looks clear. Yes, I have searched your thread but couldn't find the answer (maybe I could have tried a little more). I hope I will not have to bother you anymore
Thank for such a complete answer and for everything you do for our Nexus 5
Yeah I know, the thread is a bit messy but I can't do anything about it
Don't hesitate to ask if you need a bit more help
Related
Hello, I have some problems while building cm9 from sources.
When I do
Code:
brunch galaxysl
I get the following:
Code:
Repository for galaxysl not found in the CyanogenMod Github repository list. If this is in error, you may need to manually add it to your local_manifest.xml.
build/core/product_config.mk:189: *** _nic.PRODUCTS.[[device/*/galaxysl/cm.mk]]: "device/*/galaxysl/cm.mk" does not exist. Stop.
** Don't have a product spec for: 'cm_galaxysl'
** Do you have the right repo manifest?
No such item in brunch menu. Try 'breakfast'
(seems like its not officialy supported by CM team)
I've tried this:
Manually downloaded files as .zip from here:
Code:
https://github.com/teamhacksung/android_device_samsung_galaxysl
and extracted here: /device/samsung/galaxysl/
Then downloaded files from here:
Code:
https://github.com/teamhacksung/android_vendor_samsung_galaxysl
and extracted here /vendor/samsung/galaxysl/
Then compiled with no errors, the output files were something like this:
Code:
cm-9-20120717-UNOFFICIAL-galaxysl.zip
and
Code:
cm_galaxysl-ota-eng.xxxx.zip
They have both different sizes (every file has different size inside .zip), if someone could tellme the difference it will be apreciated.
Tried flashing both of them, and the phone doesnt boot up, just black screen on.
CWM 6.0 works just fine.
Could someone guideme or give me any tip to make it work?
Thanks in advance.
frapeti said:
Hello, I have some problems while building cm9 from sources.
When I do
Code:
brunch galaxysl
I get the following:
Code:
Repository for galaxysl not found in the CyanogenMod Github repository list. If this is in error, you may need to manually add it to your local_manifest.xml.
build/core/product_config.mk:189: *** _nic.PRODUCTS.[[device/*/galaxysl/cm.mk]]: "device/*/galaxysl/cm.mk" does not exist. Stop.
** Don't have a product spec for: 'cm_galaxysl'
** Do you have the right repo manifest?
No such item in brunch menu. Try 'breakfast'
(seems like its not officialy supported by CM team)
I've tried this:
Manually downloaded files as .zip from here:
Code:
https://github.com/teamhacksung/android_device_samsung_galaxysl
and extracted here: /device/samsung/galaxysl/
Then downloaded files from here:
Code:
https://github.com/teamhacksung/android_vendor_samsung_galaxysl
and extracted here /vendor/samsung/galaxysl/
Then compiled with no errors, the output files were something like this:
Code:
cm-9-20120717-UNOFFICIAL-galaxysl.zip
and
Code:
cm_galaxysl-ota-eng.xxxx.zip
They have both different sizes (every file has different size inside .zip), if someone could tellme the difference it will be apreciated.
Tried flashing both of them, and the phone doesnt boot up, just black screen on.
CWM 6.0 works just fine.
Could someone guideme or give me any tip to make it work?
Thanks in advance.
Click to expand...
Click to collapse
You need to download the kernel too.
Download android_kernel_samsung_latona.
And build it separately and then build cm9.
In the evening, I will post the local_manifest.xml, copy it to the .repo folder. this will downlod the device/vendor and kernel for galaxysl automatically. Any changes by teamhacksung will also be synced automatically.
meanwhile you can refer to cm7 local_manifest.xml.
You need to make changes to it to as it is for gb.
Check this out: http://pastebin.com/Xig7BtHV
ganeshbiyer said:
You need to download the kernel too.
Download android_kernel_samsung_latona.
And build it separately and then build cm9.
In the evening, I will post the local_manifest.xml, copy it to the .repo folder. this will downlod the device/vendor and kernel for galaxysl automatically. Any changes by teamhacksung will also be synced automatically.
meanwhile you can refer to cm7 local_manifest.xml.
You need to make changes to it to as it is for gb.
Click to expand...
Click to collapse
Thanks you very much I'll sure try this tonight
Why dont u try building cm10 from sources like that on galaxy s i9000...
Thanks
Sent from my GT-I9300 using xda app-developers app
EDIT:
I didn't read Ganesh's post well enough and I din't see his attachment at first. This post is pretty much the same .
EDIT 2:
I should see better, but I think that cm-9-***-UNOFFICIAL-galaxysl.zip has all the apk with all the images optimized for size. If you take a look at the last messages in your terminal you'll see a lot of lines that start with "Optimizing ****...".
____
I usually put this local_manifest.xml inside .repo/
Code:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="teamhacksung/android_device_samsung_galaxysl" path="device/samsung/galaxysl" remote="github" revision="ics" />
<project name="teamhacksung/android_vendor_samsung_galaxysl" path="vendor/samsung/galaxysl" remote="github" revision="ics" />
<project name="teamhacksung/android_kernel_samsung_latona" path="kernel/samsung/latona" remote="github" revision="ics-samsung-2.6.35.7" />
<project name="alfrix/buildscripts" path="buildscripts" remote="github" revision="ics">
<copyfile dest="build.sh" src="samsung/build.sh" />
</project>
<project name="CyanogenMod/android_packages_apps_SamsungServiceMode" path="packages/apps/SamsungServiceMode" remote="github" />
</manifest>
and then run
Code:
repo sync
Everything is done automatically, all the sources are in the right place and everything is ready to be built.
As you can see I'm using alfrix's builscripts instead of the teamhacksung ones. That's because he already adapted them to work with our phone (well, codeworkx recently changed build.sh and made it a little bit more universal). So I can simply run
Code:
./build.sh galaxysl
NOTE:
By default the kernel is not built from kernel/samsung/latona, the prebuilt one in device/samsung/galaxysl/kernel is used (you'll see a warning during the building process). This kernel is old if I'm not wrong, it doesn't have all the latest changes.
I usually build it separately and then replace it and the modules inside device/samsung/galaxysl/.
(remember that if you don't set up git correctly, the next time you'll do a repo sync you'll "loose" your changes)
I am getting this warning message:
while compiling cm9, i am getting the following warning
BFD: /media/Data/cm9/system/out/target/product/galaxysl/repack.d/ota/system/lib/storage.ko: warning: sh_link not set for section `.ARM.exidx'
what is this regarding?
Can any one enlighten me?
Thanks you very much, I could compile it but with some few issues.
1.- Couldnt compile the kernel (./kernel/samsung/latona) using either latona_galaxy_defconfig / config file pulled via adb.
2.- I've replaced the prebuilt one (./device/samsung/galaxysl/kernel) with cm9a9 kernel then build the whole rom. (wifi didnt work)
3.- Replaced the new boot.img in a working cm9a9 build and works fine, cwm 6.0.7 and wifi works but the rom isnt the one that I've compiled.
Seems like there is a problem with wlan modules. :0
Btw I'll keep trying
Thanks again
frapeti said:
Thanks you very much, I could compile it but with some few issues.
1.- Couldnt compile the kernel (./kernel/samsung/latona) using either latona_galaxy_defconfig / config file pulled via adb.
2.- I've replaced the prebuilt one (./device/samsung/galaxysl/kernel) with cm9a9 kernel then build the whole rom. (wifi didnt work)
3.- Replaced the new boot.img in a working cm9a9 build and works fine, cwm 6.0.7 and wifi works but the rom isnt the one that I've compiled.
Seems like there is a problem with wlan modules. :0
Btw I'll keep trying
Thanks again
Click to expand...
Click to collapse
To compile the kernel you go to the kernel/samsung/latona folder and run the ./build.sh and then build the ROM.
Regarding the WIFI, I have the same problem. I was able to build it, but the wifi seems not to work.
ganeshbiyer said:
To compile the kernel you go to the kernel/samsung/latona folder and run the ./build.sh and then build the ROM.
Regarding the WIFI, I have the same problem. I was able to build it, but the wifi seems not to work.
Click to expand...
Click to collapse
Its nice that the build.sh script copy the modules and the kernel after build.
I've check'd the log and it seems like its using linaro toolchain and the prebuilt one is codesourcery.
Code:
make: ../../../prebuilt/linux-x86/toolchain/linaro-4.6/bin/arm-eabi-gcc: Command not found
I've checked ../../../prebuilt/linux-86/toolchain folder and there isnt any linaro-4.6 folder, maybe the scripts are out of date.
I'll try tomorrow to find that toolchain and put it there
frapeti said:
Its nice that the build.sh script copy the modules and the kernel after build.
I've check'd the log and it seems like its using linaro toolchain and the prebuilt one is codesourcery.
Code:
make: ../../../prebuilt/linux-x86/toolchain/linaro-4.6/bin/arm-eabi-gcc: Command not found
I've checked ../../../prebuilt/linux-86/toolchain folder and there isnt any linaro-4.6 folder, maybe the scripts are out of date.
I'll try tomorrow to find that toolchain and put it there
Click to expand...
Click to collapse
I think you are using Alfrix kernel.
The default kernel for galaxysl from teamhacksung git does not use linaro.
frapeti said:
Thanks you very much, I could compile it but with some few issues.
1.- Couldnt compile the kernel (./kernel/samsung/latona) using either latona_galaxy_defconfig / config file pulled via adb.
2.- I've replaced the prebuilt one (./device/samsung/galaxysl/kernel) with cm9a9 kernel then build the whole rom. (wifi didnt work)
3.- Replaced the new boot.img in a working cm9a9 build and works fine, cwm 6.0.7 and wifi works but the rom isnt the one that I've compiled.
Seems like there is a problem with wlan modules. :0
Btw I'll keep trying
Thanks again
Click to expand...
Click to collapse
Regarding wifi issue I talked with dhiru.
He says to use dhcpcd from cm7.
frapeti said:
Its nice that the build.sh script copy the modules and the kernel after build.
I've check'd the log and it seems like its using linaro toolchain and the prebuilt one is codesourcery.
Code:
make: ../../../prebuilt/linux-x86/toolchain/linaro-4.6/bin/arm-eabi-gcc: Command not found
I've checked ../../../prebuilt/linux-86/toolchain folder and there isnt any linaro-4.6 folder, maybe the scripts are out of date.
I'll try tomorrow to find that toolchain and put it there
Click to expand...
Click to collapse
I guess you are building alfrix's kernel
He switched to linaro. You need to download the toolchain separately if you want to use it.
EDIT 2:
... oh, I didn't see ganesh's post this time too...
ganeshbiyer said:
Regarding wifi issue I talked with dhiru.
He says to use dhcpcd from cm7.
Click to expand...
Click to collapse
I too had troubles with wifi at first, but I think in my case the problem was my router. It always gives me problems, I can't even keep my phone with the screen off and wifi on. It keeps the connection active with the router, but that's it, if I try to ping something out of my net, I get no response. (stock roms too)
Anyway, I was able to enstablish a connection with a static IP and now it works with DHCP too, but I didn't use dhcpd from CM7, weird.
EDIT:
Did more tests, it seems I have problems in getting the IP. Thanks for the headsup!
ganeshbiyer said:
I am getting this warning message:
while compiling cm9, i am getting the following warning
BFD: /media/Data/cm9/system/out/target/product/galaxysl/repack.d/ota/system/lib/storage.ko: warning: sh_link not set for section `.ARM.exidx'
what is this regarding?
Can any one enlighten me?
Click to expand...
Click to collapse
I had always got those warnings. You get them when you strip the modules.
Successfully built.
Wifi is working (adding the cm7 dhcpcd)
Cwm version is 6.0.7
nice
ganeshbiyer said:
Successfully built.
Wifi is working (adding the cm7 dhcpcd)
Cwm version is 6.0.7
Click to expand...
Click to collapse
nicee I hope I can make it work as yours, cheers. :highfive:
So the connection works but DHCP doesnt.
I'll try that and see what happens
Wich files did you copy from cm7 to add dhcp? / wich repo?
ganeshbiyer said:
I think you are using Alfrix kernel.
The default kernel for galaxysl from teamhacksung git does not use linaro.
Click to expand...
Click to collapse
loSconosciuto said:
I guess you are building alfrix's kernel
He switched to linaro. You need to download the toolchain separately if you want to use it.
Click to expand...
Click to collapse
Yes, I've moded the local_manifest.xml a little I'll try with the default kernel for now
There are some issues that I've found related to the cpu governors, i.e on-demand makes the battery last longer but seems like it makes the connection down or just cloud notifications down while certain amount of time with screen off. With conservative governor works just fine.
modded default.xml for cm7
Code:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote name="korg"
fetch="git://android.git.kernel.org/"
review="review.source.android.com" />
<remote name="github"
fetch=".."
review="review.cyanogenmod.com" />
<default revision="gb-release-7.2"
remote="github" />
<project path="external/dhcpcd" name="CyanogenMod/android_external_dhcpcd" />
</manifest>
frapeti said:
There are some issues that I've found related to the cpu governors, i.e on-demand makes the battery last longer but seems like it makes the connection down or just cloud notifications down while certain amount of time with screen off. With conservative governor works just fine.
Click to expand...
Click to collapse
FYI dhiru's kernel has all the governors, waleedq included them when he took UC kernel sources.
Basically, after
Code:
make latona_galaxysl_defconfig
run (or edit build.sh)
Code:
make menuconfig
and under "CPU Power Management --->" do all the changes you want.
Worked like a charm thx u all!
Flawlessly built and running with the latest updates.
When I finish with exams I will look closer to that source stuff
hi friend seeing screen shot of cm9 compiled by u it looks u have got wifi icon in stautsbar working
+1 this. Is it static or working? (I saw a fake wifi signal workaround so i would rather confirm before celebrating).
Cheers. Congrats for successful compilation though
santoshsadani009 said:
+1 this. Is it static or working? (I saw a fake wifi signal workaround so i would rather confirm before celebrating).
Cheers. Congrats for successful compilation though
Click to expand...
Click to collapse
androman1507 said:
hi friend seeing screen shot of cm9 compiled by u it looks u have got wifi icon in stautsbar working
Click to expand...
Click to collapse
He posted the workaround in the "Theme and Apps" subforum, so I think it's fake
ganeshbiyer said:
Successfully built.
Wifi is working (adding the cm7 dhcpcd)
Cwm version is 6.0.7
Click to expand...
Click to collapse
I can see that CWM is under heavy developement and with your version (or maybe 6.0.6) I couldn't mount /emmc or /sdcard because of a missing trailing slash (koush fixed it now) and now CWM 6.0.0.9 erase my /system partition when I try to start a backup and I think it does something to /efs too (of course I have a backup of everything ), but I'm not sure if the problem is CWM or I did something wrong.
So, be carefull with this new recovery (anyway I like the new background :laugh
EDIT:
Ok, now I'm sure: /system, /efs and probably /sdcard (=external sd in CWM) are erased when you start a backup.
EDIT 2:
And gapps is missing after an update, it never happened. I think this is related to it.
This recovery is CWM for the One SV. It is fully working and has no problems. All variants are supported below
K2_CL (Boost Mobile) -> Boost Download
K2_PLC_CL (Cricket) -> Cricket Download
K2_UL (EU LTE) -> EU LTE Download
K2_U (EU NON-LTE) -> EU Non-LTE Download
Sources:
Boost Mobile Source
Cricket Source
EU LTE Source
EU Non-LTE Source
To build these recoveries on your own, simply follow the directions below:
Clone the CyanogenMod repo. See their wiki at http://wiki.cyanogenmod.org
create a local_manifests file by issuing the command `mkdir -p .repo/local_manifests/` then `gedit .repo/local_manifests/k2.xml`
inside this new document place the following lines
Code:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project path="device/htc/msm8960-common" name="CyanogenMod/android_device_htc_msm8960-common" />
<project path="device/htc/s4-common" name="CyanogenMod/android_device_htc_s4-common" />
<project path="device/htc/k2_cl" name="SimonSickle/android_device_htc_k2_cl" revision="cwm" />
<project path="vendor/htc/k2_cl" name="SimonSickle/android_vendor_htc_k2_cl" revision="jellybean" />
<project path="device/htc/k2_plc_cl" name="SimonSickle/android_device_htc_k2_plc_cl" revision="cwm" />
<project path="vendor/htc/k2_plc_cl" name="SimonSickle/android_vendor_htc_k2_plc_cl" revision="jellybean" />
<project path="device/htc/k2_ul" name="SimonSickle/android_device_htc_k2_ul" revision="cwm" />
<project path="vendor/htc/k2_ul" name="SimonSickle/android_vendor_htc_k2_ul" revision="jellybean" />
<project path="device/htc/k2_u" name="SimonSickle/android_device_htc_k2_u" revision="cwm" />
<project path="vendor/htc/k2_u" name="SimonSickle/android_vendor_htc_k2_u" revision="jellybean" />
<project path="kernel/htc/k2" name="SickleKernels/android_kernel_htc_k2" revision="htc_3.4" />
</manifest>
now run `repo sync` and wait for this to finish. It will take a long time
With any luck, you now have the source. Your computer should already be set up to build so just do the following commands
. build/envsetup.sh
now you will want to lunch the right device (see the download section as a guide)
lunch cm_k2_cl-userdebug
and finally the make command is as follows
make -j5 recoveryimage
at the end you will see a welcoming path to your new recovery. Flash it in fastboot or with dd and enjoy!
simonsimons34 said:
This recovery is CWM for the One SV. It is fully working and has no weird glitchy screen like it had before.
Download for BOOST MOBILE here -> http://downloads.codefi.re/simon/k2cl/CWMrecovery.img
Source at http://github.com/SimonSickle/android_device_htc_k2_cl/tree/cwm
I have applied for official status with Koush. Until he accepts it, enjoy this perfect build
Click to expand...
Click to collapse
Works great Simon! Thanks.
simonsimons34 said:
This recovery is CWM for the One SV. It is fully working and has no weird glitchy screen like it had before.
Download for BOOST MOBILE here -> http://downloads.codefi.re/simon/k2cl/CWMrecovery.img
Source at http://github.com/SimonSickle/android_device_htc_k2_cl/tree/cwm
I have applied for official status with Koush. Until he accepts it, enjoy this perfect build
Click to expand...
Click to collapse
Hi;
The recovery file is not there. Can you reload it?
Sorry Simon, recovery doesn't boot.
Neither the k2u nor the k2ul.
k2u -> boots constantly into android, not recovery.
k2ul -> hangs on splash screen.
bkcokota's cwm works totally fine, but it has the framework bug.
This bug fixed and we have a stable CWM. But i know, devs do not work on others build.
I am going to do twrp then. Once those are confirmed booting ill use the TWRP folder and remove anything non twrp from them
PS- The issue with his build is a lack of source (problem one), the partitions are different (two), the devices have different code names which messes with the flashing of source built roms (problem three) and its not ready for 4.3 (4)
Updated 9/21/13
Sent from my C525c using Tapatalk 4
All of the links are dead. Where else can I get info for the Boost c525c?
[Q&A] [Ubuntu Touch - Utopic][PORT]STOPED][Test-BUILD][2014-08-27] Ubuntu Touch for
Q&A for [Ubuntu Touch - Utopic][PORT]STOPED][Test-BUILD][2014-08-27] Ubuntu Touch for falcon
Some developers prefer that questions remain separate from their main development thread to help keep things organized. Placing your question within this thread will increase its chances of being answered by a member of the community or by the developer.
Before posting, please use the forum search and read through the discussion thread for [Ubuntu Touch - Utopic][PORT]STOPED][Test-BUILD][2014-08-27] Ubuntu Touch for falcon. If you can't find an answer, post it here, being sure to give as much information as possible (firmware version, steps to reproduce, logcat if available) so that you can get help.
Thanks for understanding and for helping to keep XDA neat and tidy!
Is there any way to flash the boot.img and system.img using multirom. I found about multirom installer (*.mrom files). But didn't had any luck with it.
I tried to compile the Android pieces on my own but I get an error with libmake_f2fs_intermediates:
make: *** No rule to make target `<.....>/out/target/product/falcon/obj/STATIC_LIBRARIES/libmake_f2fs_intermediates/export_includes', needed by `<.....>/out/target/product/falcon/obj/EXECUTABLES/recovery_intermediates/import_includes'. Stop.
I checked out the Ubuntu Touch code using Canonical's manifest. I did not use h2o64's manifest.
In my local manifest I added the CyanogenMod projects for falcon, as well as dependencies:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote fetch="git://github.com/" name="github" />
<project name="cyanogenmod/android_kernel_motorola_msm8226" path="kernel/motorola/msm8226" remote="github" revision="cm-11.0" />
<project name="cyanogenmod/android_device_motorola_falcon" path="device/motorola/falcon" remote="github" revision="cm-11.0" />
<project name="cyanogenmod/android_device_motorola_msm8226-common" path="device/motorola/msm8226-common" remote="github" revision="cm-11.0" />
<project name="cyanogenmod/android_device_qcom_common" path="device/qcom/common" remote="github" revision="cm-11.0" />
<project name="cyanogenmod/android_hardware_qcom_fm" path="hardware/qcom/fm" remote="github" revision="cm-11.0" />
<remove-project name="aosp/platform/hardware/qcom/display" />
<project name="cyanogenmod/android_hardware_qcom_display-caf-new" path="hardware/qcom/display-caf-new" remote="github" revision="cm-11.0" />
<remove-project name="aosp/platform/hardware/qcom/media" />
<project name="cyanogenmod/android_hardware_qcom_media-caf-new" path="hardware/qcom/media-caf-new" remote="github" revision="cm-11.0" />
</manifest>
Apart from that I did not make any changes. Just trying to get the sources compiled.
Can somebody tell me why I get this error and how to fix it?
The system is restarting all the time
I followed all the steps of the fórum and the system is restarting all the time
multirom
is it possible to install the ubuntu touch image via multirom manually?
Errors during build
I have finished downloading the sources including your local manifest. Now I am trying to build and will report some errors here. Once I have a successful build, I am happy to share logs (if accessible) and help debugging.
I directly encountered this error:
build/core/base_rules.mk:134: *** hardware/qcom/display/msm8x26/liblight: MODULE.TARGET.SHARED_LIBRARIES.lights.msm8226 already defined by device/motorola/falcon/liblight. Stop.
So I renamed old module to lights.msm8226.old
hardware/qcom/display/msm8x26/liblight/Android.mk:160:
LOCAL_MODULE := lights.$(TARGET_BOARD_PLATFORM).old
No the build process stops after only a few lines with:
make: *** No rule to make target `[...]/Ubuntu_Touch/out/target/product/falcon/kernel', needed by `prebuilt'. Stop.
---------- Post added at 07:50 PM ---------- Previous post was at 07:40 PM ----------
I also noticed that not all the dependent projects are added in the local manifest.
android_device_motorola_falcon
depends on
android_device_motorola_msm8226-common
depends on
android_device_qcom_common
android_kernel_motorola_msm8226
android_hardware_qcom_fm
android_hardware_qcom_display-caf-new
android_hardware_qcom_media-caf-new
Will add the missing ones and try to build again.
Edit: Just saw that you included the files already in device/motorola/falcon.
the_MUKe said:
I have finished downloading the sources including your local manifest. Now I am trying to build and will report some errors here. Once I have a successful build, I am happy to share logs (if accessible) and help debugging.
I directly encountered this error:
build/core/base_rules.mk:134: *** hardware/qcom/display/msm8x26/liblight: MODULE.TARGET.SHARED_LIBRARIES.lights.msm8226 already defined by device/motorola/falcon/liblight. Stop.
So I renamed old module to lights.msm8226.old
hardware/qcom/display/msm8x26/liblight/Android.mk:160:
LOCAL_MODULE := lights.$(TARGET_BOARD_PLATFORM).old
No the build process stops after only a few lines with:
make: *** No rule to make target `[...]/Ubuntu_Touch/out/target/product/falcon/kernel', needed by `prebuilt'. Stop.
---------- Post added at 07:50 PM ---------- Previous post was at 07:40 PM ----------
I also noticed that not all the dependent projects are added in the local manifest.
android_device_motorola_falcon
depends on
android_device_motorola_msm8226-common
depends on
android_device_qcom_common
android_kernel_motorola_msm8226
android_hardware_qcom_fm
android_hardware_qcom_display-caf-new
android_hardware_qcom_media-caf-new
Will add the missing ones and try to build again.
Edit: Just saw that you included the files already in device/motorola/falcon.
Click to expand...
Click to collapse
I'm fixing things guys
Wait
(I'll tell here when the major issues (building issues) are fixed
---------- Post added at 11:35 AM ---------- Previous post was at 11:27 AM ----------
the_MUKe said:
I tried to compile the Android pieces on my own but I get an error with libmake_f2fs_intermediates:
make: *** No rule to make target `<.....>/out/target/product/falcon/obj/STATIC_LIBRARIES/libmake_f2fs_intermediates/export_includes', needed by `<.....>/out/target/product/falcon/obj/EXECUTABLES/recovery_intermediates/import_includes'. Stop.
I checked out the Ubuntu Touch code using Canonical's manifest. I did not use h2o64's manifest.
In my local manifest I added the CyanogenMod projects for falcon, as well as dependencies:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote fetch="git://github.com/" name="github" />
<project name="cyanogenmod/android_kernel_motorola_msm8226" path="kernel/motorola/msm8226" remote="github" revision="cm-11.0" />
<project name="cyanogenmod/android_device_motorola_falcon" path="device/motorola/falcon" remote="github" revision="cm-11.0" />
<project name="cyanogenmod/android_device_motorola_msm8226-common" path="device/motorola/msm8226-common" remote="github" revision="cm-11.0" />
<project name="cyanogenmod/android_device_qcom_common" path="device/qcom/common" remote="github" revision="cm-11.0" />
<project name="cyanogenmod/android_hardware_qcom_fm" path="hardware/qcom/fm" remote="github" revision="cm-11.0" />
<remove-project name="aosp/platform/hardware/qcom/display" />
<project name="cyanogenmod/android_hardware_qcom_display-caf-new" path="hardware/qcom/display-caf-new" remote="github" revision="cm-11.0" />
<remove-project name="aosp/platform/hardware/qcom/media" />
<project name="cyanogenmod/android_hardware_qcom_media-caf-new" path="hardware/qcom/media-caf-new" remote="github" revision="cm-11.0" />
</manifest>
Apart from that I did not make any changes. Just trying to get the sources compiled.
Can somebody tell me why I get this error and how to fix it?
Click to expand...
Click to collapse
You forgot to add "CyanogenMod/android_external_f2fs-tools" revison cm-11.0
And include it in main.mk
KMSG log file
I hope it's useful.
Logfile is attached.
thx
omniaholic said:
I hope it's useful.
Logfile is attached.
thx
Click to expand...
Click to collapse
The last build is useless and outdated
But thank you for sending. I'll notificate you when a new build will come
Update on build process
First thanks for the responses. Indeed I forgot to add the subdir in main.mk before. However, now I making sure that all subdirs are included...
Just to inform you about what I have done so far. I started building based on the phablet repo and added my own local manifest (attached).
added device/motorola/falcon and dependencies
copied vendor/motorola from existing (and recent) CyanogenMod
added subdirs in build/core/main.mk
added external/f2fs-tools
removed APKs and JARs from vendor/motorola/msm8226-common/proprietary
replaced hardware/qcom/keymaster with CyanogenMod version (some error with original keymaster)
replaced all hardware/qcom project with CyanogenMod versions (helpful?)
Workaround: deleted gps from device/motorola/msm8226-common (libnativehelper would be required, plus several undeclared constants)
Workaround: force include of all subdirs in device/qcom/common/Android.mk (dtbToolCM is required)
Workaround: deleted power in device/qcom/common (some undeclared constants)
Now the build process runs through but there are errors with creating the recovery image and the boot image.
However, I noticed that h2o64 made some changes to android/system/core, in particular mkbootimg. So I will see if I can also use the CyanogenMod version here.
If anyone has better solutions for these Workaround items, please let me know.
the_MUKe said:
First thanks for the responses. Indeed I forgot to add the subdir in main.mk before. However, now I making sure that all subdirs are included...
Just to inform you about what I have done so far. I started building based on the phablet repo and added my own local manifest (attached).
added device/motorola/falcon and dependencies
copied vendor/motorola from existing (and recent) CyanogenMod
added subdirs in build/core/main.mk
added external/fsf2-tools
removed APKs and JARs from vendor/motorola/msm8226-common/proprietary
replaced hardware/qcom/keymaster with CyanogenMod version (some error with original keymaster)
replaced all hardware/qcom project with CyanogenMod versions (helpful?)
Workaround: deleted gps from device/motorola/msm8226-common (libnativehelper would be required, plus several undeclared constants)
Workaround: force include of all subdirs in device/qcom/common/Android.mk (dtbToolCM is required)
Workaround: deleted power in device/qcom/common (some undeclared constants)
Now the build process runs through but there are errors with creating the recovery image and the boot image.
However, I noticed that h2o64 made some changes to android/system/core, in particular mkbootimg. So I will see if I can also use the CyanogenMod version here.
If anyone has better solutions for these Workaround items, please let me know.
Click to expand...
Click to collapse
Changing hardware/qcom was a BIG mistake!
Revert it and try to change things line by line.
Anyway! Good job!
Accessing the boot log...
@h2o64: Great to hear that you made progress!
In my repo I managed to finish the build process. I flashed the boot.img and ran the rootstock-touch-install script without errors. I needed to raise the size of the ext4fs: make_ext4fs -l 256M $WORKDIR/system.img $TMPMOUNT
The 256M are just a value I put in there, no idea which value would be best.
Unfortunately, when booting the device, the screen remains at the Motorola logo.
I bootet into recovery and took the dmesg output. Not sure whether this also includes the previous boot log or only the log of booting into recovery...
In the Ubuntu Wiki in the Deprecated Porting Guide they suggest to look at /proc/last_kmsg
In the Debug section they also recommend to pass command line arguments to the kernel:
If you encounter initrd issues while booting you can add to your kernel boot arguments the following line "break=top"...
This should then pause the boot process and open an adb shell.
But in which file can I set the kernel arguments? There are several config files in the kernel directory...
Well, as soon as h2o64 has finished updating his repo, I will try with his local manifest. And then try to provide boot logs, etc.
the_MUKe said:
@h2o64: Great to hear that you made progress!
In my repo I managed to finish the build process. I flashed the boot.img and ran the rootstock-touch-install script without errors. I needed to raise the size of the ext4fs: make_ext4fs -l 256M $WORKDIR/system.img $TMPMOUNT
The 256M are just a value I put in there, no idea which value would be best.
Unfortunately, when booting the device, the screen remains at the Motorola logo.
I bootet into recovery and took the dmesg output. Not sure whether this also includes the previous boot log or only the log of booting into recovery...
In the Ubuntu Wiki in the Deprecated Porting Guide they suggest to look at /proc/last_kmsg
In the Debug section they also recommend to pass command line arguments to the kernel:
If you encounter initrd issues while booting you can add to your kernel boot arguments the following line "break=top"...
This should then pause the boot process and open an adb shell.
But in which file can I set the kernel arguments? There are several config files in the kernel directory...
Well, as soon as h2o64 has finished updating his repo, I will try with his local manifest. And then try to provide boot logs, etc.
Click to expand...
Click to collapse
You made a very impressive work
Last_kmsg is the best we can take... The kernel patch... Hmm... It's not fit me.
To be honest I'm kind of lazy xD
I need to redo the hardware qcom part..
Do you have hangout? We can talk about it with more serious details?
hardware/qcom projects
No, I don't use Hangouts. Maybe IRC might do?
But I am also fine to post the (bigger) issues here. Then also somebody else could possibly find a solution.
The hardware/qcom part seems to be indeed a bit tricky.
When using the projects from Ubuntu Touch repo, eventually some kernel headers cannot be found, e.g. a file inside hardware/qcom/display/... includes "linux/msm_ion.h" which cannot be found.
I tried manually setting the kernel_includes in hardware/qcom/display/msm8x26/common.mk: kernel_includes := kernel/motorola/msm8226/include
But this only leads to multiple C++ errors like: narrowing conversion of 'dst->copybit_image_t::w' from 'const uint32_t {aka const unsigned int}' to 'int' inside { } is ill-formed in C++11 [-Werror=narrowing]
Also the liblight module is duplicated (but one can easily be renamed).
These problems do not occur when using the corresponding projects from CyanogenMod instead.
I am still undecided whether to stick to the original Ubuntu Touch projects for hardware/qcom or better go consistently with all the hardware/qcom projects from CyanogenMod. Not sure which other interdependencies exist there...
the_MUKe said:
No, I don't use Hangouts. Maybe IRC might do?
But I am also fine to post the (bigger) issues here. Then also somebody else could possibly find a solution.
The hardware/qcom part seems to be indeed a bit tricky.
When using the projects from Ubuntu Touch repo, eventually some kernel headers cannot be found, e.g. a file inside hardware/qcom/display/... includes "linux/msm_ion.h" which cannot be found.
I tried manually setting the kernel_includes in hardware/qcom/display/msm8x26/common.mk: kernel_includes := kernel/motorola/msm8226/include
But this only leads to multiple C++ errors like: narrowing conversion of 'dst->copybit_image_t::w' from 'const uint32_t {aka const unsigned int}' to 'int' inside { } is ill-formed in C++11 [-Werror=narrowing]
Also the liblight module is duplicated (but one can easily be renamed).
These problems do not occur when using the corresponding projects from CyanogenMod instead.
I am still undecided whether to stick to the original Ubuntu Touch projects for hardware/qcom or better go consistently with all the hardware/qcom projects from CyanogenMod. Not sure which other interdependencies exist there...
Click to expand...
Click to collapse
I did fix it on the previous release. I'll do it again.
the_MUKe said:
No, I don't use Hangouts. Maybe IRC might do?
But I am also fine to post the (bigger) issues here. Then also somebody else could possibly find a solution.
The hardware/qcom part seems to be indeed a bit tricky.
When using the projects from Ubuntu Touch repo, eventually some kernel headers cannot be found, e.g. a file inside hardware/qcom/display/... includes "linux/msm_ion.h" which cannot be found.
I tried manually setting the kernel_includes in hardware/qcom/display/msm8x26/common.mk: kernel_includes := kernel/motorola/msm8226/include
But this only leads to multiple C++ errors like: narrowing conversion of 'dst->copybit_image_t::w' from 'const uint32_t {aka const unsigned int}' to 'int' inside { } is ill-formed in C++11 [-Werror=narrowing]
Also the liblight module is duplicated (but one can easily be renamed).
These problems do not occur when using the corresponding projects from CyanogenMod instead.
I am still undecided whether to stick to the original Ubuntu Touch projects for hardware/qcom or better go consistently with all the hardware/qcom projects from CyanogenMod. Not sure which other interdependencies exist there...
Click to expand...
Click to collapse
I start working back on it.
Check my github
Will download your .img files, flash them and provide my last_kmsg log.
Will probably also build it using your manifest - just to check if build goes through also on my machine (Ubuntu 14.04 64-bit).
I noticed in the recent log provided by Awesomeslayerg that the init process could not find a system partition:
[ 4.326129,1] initrd: Couldn't find a system partition.
It's towards the end of the log. There were a few other errors but this might be a critical one?
I also had this error with my previous build (when using all hardware/qcom projects from CyanogenMod).
And did you make any changes in the rootstock-touch-install script?
It will work on 5.0.1 lollipop bootloader??
Results with provided .img files
The recovery you provided is not working in my case - I get a blank screen. So I flashed back to TWRP.
I actually had the Ubuntu recovery (a reduced CWM with Ubuntu Logo) working when using all hardware/qcom projects from CyanogenMod.
I also flashed your boot.img and used the rootstock-touch-install script to get the system.img together with vivid files onto the phone. The script finished very fast but all steps were completed.
When booting up, the phone gets stuck while the Motorola logo is still showing.
So I rebooted into recovery and obtained the last_kmsg log (attached).
the_MUKe said:
The recovery you provided is not working in my case - I get a blank screen. So I flashed back to TWRP.
I actually had the Ubuntu recovery (a reduced CWM with Ubuntu Logo) working when using all hardware/qcom projects from CyanogenMod.
I also flashed your boot.img and used the rootstock-touch-install script to get the system.img together with vivid files onto the phone. The script finished very fast but all steps were completed.
When booting up, the phone gets stuck while the Motorola logo is still showing.
So I rebooted into recovery and obtained the last_kmsg log (attached).
Click to expand...
Click to collapse
Very nice.
Yeah... My hardware display & media are weirdly inconsistent... I'll redo them
Thanks for your report!
(please, speak on the main thread )
---------- Post added at 12:03 AM ---------- Previous post was at 12:03 AM ----------
ADr0n said:
It will work on 5.0.1 lollipop bootloader??
Click to expand...
Click to collapse
Nope
Hey!
I am trying to port AOSP-B to my LG G4. I added the following to my manifext.xml follow and synced
Code:
<remote name="mups" fetch="https://www.github.com/themuppets" revision="cm-13.0" />
<remote name="cm"
fetch="https://github.com/cyanogenmod"
revision="cm-13.0" />
<project path="device/lge/h811" name="android_device_lge_h811" remote="cm" />
<project path="device/lge/g4-common" name="android_device_lge_g4-common" remote="cm" />
<project path="kernel/lge/msm8992" name="android_kernel_lge_msm8992" remote="cm" />
<project path="vendor/lge" name="proprietary_vendor_lge" remote="mups" />
and synced up. Everything I added was there. Perfect!
I run "./build/envsetup.sh" and everything goes fine.
I type "lunch" and see my device
Code:
8. cm_h811-userdebug
I hit "8" and get this:
Code:
build/core/product_config.mk:234: *** Can not locate config makefile for product "cm_h811". Stop.
Device h811 not found. Attempting to retrieve device repository from AOSPB Github (http://github.com/AOSPB).
Repository for h811 not found in the AOSPB Github repository list.
If this is in error, you may need to manually add it to your .repo/local_manifests/aospb_manifest.xml
build/core/product_config.mk:234: *** Can not locate config makefile for product "cm_h811". Stop.
** Don't have a product spec for: 'cm_h811'
** Do you have the right repo manifest?
Where could I go wrong? I know since I'm building AOSP that it's probably missing something from CM. What would I need to add? I've already reached out to a dev that ported this AOSPB to the G3 with no response yet.
I did not modify anything I downloaded. Just sync and build.
Any ideas?
bradym512 said:
Hey!
I am trying to port AOSP-B to my LG G4. I added the following to my manifext.xml follow and synced
Code:
<remote name="mups" fetch="https://www.github.com/themuppets" revision="cm-13.0" />
<remote name="cm"
fetch="https://github.com/cyanogenmod"
revision="cm-13.0" />
<project path="device/lge/h811" name="android_device_lge_h811" remote="cm" />
<project path="device/lge/g4-common" name="android_device_lge_g4-common" remote="cm" />
<project path="kernel/lge/msm8992" name="android_kernel_lge_msm8992" remote="cm" />
<project path="vendor/lge" name="proprietary_vendor_lge" remote="mups" />
and synced up. Everything I added was there. Perfect!
I run "./build/envsetup.sh" and everything goes fine.
I type "lunch" and see my device
Code:
8. cm_h811-userdebug
I hit "8" and get this:
Code:
build/core/product_config.mk:234: *** Can not locate config makefile for product "cm_h811". Stop.
Device h811 not found. Attempting to retrieve device repository from AOSPB Github (http://github.com/AOSPB).
Repository for h811 not found in the AOSPB Github repository list.
If this is in error, you may need to manually add it to your .repo/local_manifests/aospb_manifest.xml
build/core/product_config.mk:234: *** Can not locate config makefile for product "cm_h811". Stop.
** Don't have a product spec for: 'cm_h811'
** Do you have the right repo manifest?
Where could I go wrong? I know since I'm building AOSP that it's probably missing something from CM. What would I need to add? I've already reached out to a dev that ported this AOSPB to the G3 with no response yet.
I did not modify anything I downloaded. Just sync and build.
Any ideas?
Click to expand...
Click to collapse
Greetings,
Please read the sticky threads for XDA Assist.
This is not a help desk. XDA Assist is a place for new members to get help finding their way. Our purpose is to provide a link to where they should post and get the help they seek. As a Senior member, you are expected to be able to use the search feature and ask in the correct forum yourself.
Thanks.
Thread closed.
Hi guys. Im trying to compile Resurrection Remix based on lolipop for my HTC Desire 620. I have downloaded RR sources, device, kernel and vendor also - github.com/bartek2017
My roomservice.xml
Code:
<manifest><project name="bartek2017/android_kernel_htc_a31ul" path="kernel/htc/a31ul" remote="github" revision="cm-12.1"/><project name="HTC-MSM8916/android_device_htc_a31ul" path="device/htc/a31ul" remote="github" revision="cm-12.1"/><project name="bartek2017/proprietary_vendor_htc" path="vendor/htc/a31ul" remote="github" revision="master"/></manifest>
Firstly after typing ". build/envsetup.sh" and "lunch" I don't see any option to choose RR for this HTC. I think it's probably because I havent created any new folder in "device/generic/..." but I dont know what should be in "AndroidProducts.mk" and "vendorsetup.sh". Secondly I also dont know if I have to change anything in "device/htc/a31ul/" files like cm.mk or cmdependencies.mk
And this error below - ??? In sources there is nothing like "device/htc/msm8916...". After creating this folder I got something similiar to Cycle detected.
Code:
build/core/product_config.mk:239: *** _nic.PRODUCTS.[[device/htc/a31ul/cm.mk]]: "device/htc/msm8916-common/msm8916.mk" does not exist. Stop.
Device a31ul not found. Attempting to retrieve device repository from CyanogenMod Github (CyanogenMod).
Repository for a31ul not found in the CyanogenMod Github repository list. If this is in error, you may need to manually add it to your local_manifests/roomservice.xml.
build/core/product_config.mk:239: *** _nic.PRODUCTS.[[device/htc/a31ul/cm.mk]]: "device/htc/msm8916-common/msm8916.mk" does not exist. Stop.
** Don't have a product spec for: 'cm_a31ul'
** Do you have the right repo manifest?
Please help me. I'll be thankful for any tip. I really want to learn how to compile roms but Im stuck