Ubuntu touch - Xiaomi Poco F1 Guides, News, & Discussion

I am now starting to read the documentation related to Ubuntu touch and how to build that, any experienced dev want to share some lights on how to build that for our beloved pocophone?
https://docs.halium.org/en/latest/porting/first-steps.html

I'm in
Sent from my beryllium using XDA Labs

thanas said:
I'm in
Click to expand...
Click to collapse
This project uses android 7.1 base, not existing for our phone...
Don't known if we can use 8.1 base...

Device tree is portable but haven't read at all about Ubuntu touch. What about vendor fw?
Sent from my beryllium using XDA Labs

Vendor blobs go in the vendor/ folder in Halium source tree
Thats the info they give...

Contact me on telegram. I will research as well about this. Have a good system however I have space management issues so don't know if I'm able to compile myself. @thanas8
Sent from my beryllium using XDA Labs

Go on guys!

@abhishek987 do you think its possible to port ubuntu touch to pocophone?
Care to help?

@milouk care to participate?

@Shahan_mik3 can you help?

@CosmicDan mind to help?

Well the place project is stopped is here:
This the instructions:
The Device Repository
Next, we’ll fill the manifest with information. Start with your device repository. Create the following line between the <manifest> and </manifest> tags, replacing the information inside the square brackets with your own:
<project path="device/[manufacturer]/[device]" name="[repository name]" remote="[remote]" revision="[revision]" />
Note
The revision attribute may be omitted if the default revision for this remote is the one that you wish to use.
If you’re not sure of your remote, jump down to Remotes.
Dependencies
Now create more lines like the previous, using the cm.dependencies or lineage.dependencies file you found earlier in your device repository. This file lists all of the other repositories that you need to build for your selected device. It’s listed in a fairly straightforward way, so create a line for each of the entries in there using the following template:
<project path="[target_path]" name="[repository]" remote="[remote]" revision="[revision]" />
The target path is found in the repository’s name. The preceding “android” or “proprietary” is omitted and underscores are replaced with slashes. For example, android_device_lge_bullhead goes in device/lge/bullhead.
This is the file builded:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project path="device/xiaomi/beryllium" name="android_device_xiaomi_beryllium" remote="los" />
<project path="kernel/xiaomi/sdm845" name="los/android_kernel_xiaomi_sdm845" remote="los" revision="pgz-14.1-eb8" />
<project path="vendor/xiaomi" name="proprietary_vendor_xiaomi" remote="them" />
<project path="device/xiaomi/sdm845-common" name="android_device_xiaomi_sdm845-common" remote="los"/>
</manifest>
And this is the error:
[email protected]:/media/x/x/hal$ ./b.sh
including vendor/cm/vendorsetup.sh
including sdk/bash_completion/adb.bash
including vendor/cm/bash_completion/git.bash
including vendor/cm/bash_completion/repo.bash
build/core/product_config.mk:254: *** _nic.PRODUCTS.[[device/xiaomi/beryllium/lineage.mk]]: "build/target/product/product_launched_with_o_mr1.mk" does not exist. Stop.
Device beryllium not found. Attempting to retrieve device repository from LineageOS Github (http://github.com/LineageOS).
Found repository: android_device_xiaomi_beryllium
Traceback (most recent call last):
File "vendor/cm/build/tools/roomservice.py", line 263, in <module>
default_revision = get_default_revision()
File "vendor/cm/build/tools/roomservice.py", line 117, in get_default_revision
return r.replace('refs/heads/', '').replace('refs/tags/', '')
AttributeError: 'NoneType' object has no attribute 'replace'
build/core/product_config.mk:254: *** _nic.PRODUCTS.[[device/xiaomi/beryllium/lineage.mk]]: "build/target/product/product_launched_with_o_mr1.mk" does not exist. Stop.
build/core/product_config.mk:254: *** _nic.PRODUCTS.[[device/xiaomi/beryllium/lineage.mk]]: "build/target/product/product_launched_with_o_mr1.mk" does not exist. Stop.
Don't have a product spec for: 'lineage_beryllium'
Do you have the right repo manifest?
including vendor/cm/vendorsetup.sh
build/core/product_config.mk:254: *** _nic.PRODUCTS.[[device/xiaomi/beryllium/lineage.mk]]: "build/target/product/product_launched_with_o_mr1.mk" does not exist. Stop.
Device beryllium not found. Attempting to retrieve device repository from LineageOS Github (http://github.com/LineageOS).
Found repository: android_device_xiaomi_beryllium
Traceback (most recent call last):
File "vendor/cm/build/tools/roomservice.py", line 263, in <module>
default_revision = get_default_revision()
File "vendor/cm/build/tools/roomservice.py", line 117, in get_default_revision
return r.replace('refs/heads/', '').replace('refs/tags/', '')
AttributeError: 'NoneType' object has no attribute 'replace'
build/core/product_config.mk:254: *** _nic.PRODUCTS.[[device/xiaomi/beryllium/lineage.mk]]: "build/target/product/product_launched_with_o_mr1.mk" does not exist. Stop.
build/core/product_config.mk:254: *** _nic.PRODUCTS.[[device/xiaomi/beryllium/lineage.mk]]: "build/target/product/product_launched_with_o_mr1.mk" does not exist. Stop.
Don't have a product spec for: 'lineage_beryllium'
Do you have the right repo manifest?
No such item in brunch menu. Try 'breakfast'

following for any update....
I hope you guys succeed... I heard it is quite difficult to port ubuntu touch for not supported device and people face many errors so they give it up. BTW i don't know anything about rom development. I am a total noob.
But best wishes to you guys

Anyone wanting to join glad to hear
Sent from my beryllium using XDA Labs

This sounds like a great idea. I am following the ubports community since a long time and just love the project. I cross my fingers that you succeed. I can't offer any help as I am lacking the brain capicity to code but my thoughts are with you. As @ tejjoshii already said, I also believe the porting processs is super complicated.
Have you heard of Maru OS. It's based on lineage os and debian or ubuntu. The building process seems pretty straight forward. You just need to patch the lineage os files with the maru os files. As our device sadyl doesn't have hdmi out we could usegoogle chromecast to mirror it to a screen (that#s how they do it with the nexus 5x)- Maybe that would be for the meantime a good alternative. It combines the good two worlds of android and linux. When you connect it to a screen it boots up a full linux system. It's fully open source At the moment the htc 10, samsung galaxy s9, nexus 5 and nexus 5x and some other devices are supported.
https://groups.google.com/forum/#!forum/maru-os-dev
https://maruos.com/#/

Gave up on it too much effort to do alone since it's no Android to Android port. I'll reconsider if anyone contributes

I know it's not exactly ubuntu touch but I am running a recent Ubuntu installed alongside the Android through UserLAnd app. My phone is not even unlocked/rooted (the app uses proot). Thanks to the fast built-in storage on our phone, it's actually running quite decently. The xfce4 desktop is quite usable and so are the more demanding programs like gimp, inkscape, libreoffice, rawtherapee. The speed is comparable to my older iMac with the i5 processor. As you don't get a direct display access, you start X through vncserver and connect to it through an android vnc client. It's cool that it basically acts just like another android app so you get to enjoy the best of both worlds. It's too bad we can't easily connect our phone to and external monitor like I could with my old galaxy S5.
I've been running a linux distro on my phones for more than 7 years and for me it's one of the coolest things about android - that you can reuse existing linux kernel to run a full linux distribution.

You might want to have a look at this thread:
https://forum.xda-developers.com/poco-f1/help/maru-os-pocophone-t3900651
Maybe we have soon Linux (Debian) and lineage os up and running on our beloved pocophone. Connect it to a screen via chromecast and you'll have a proper convergence experience. One of the devs of the maru OS team is interested to port for the poco

Can someone explain what would maru OS offer that is not already available through UserLAnd?

dsvilko said:
Can someone explain what would maru OS offer that is not already available through UserLAnd?
Click to expand...
Click to collapse
Please correct me if I'am mistaken I don't have much experience with userland. When you run linux through userland can you mirror it to a big screen? But I believe the difference is that when you start Linux through userland you can't use the android part of the phone at the same time. Is that correct?
With Maru OS I believe it's different. Once you connect your phone with a cable or wirelesse solution to a screen it automatically boot up full linux distro (people are running ubuntu and debian at the moment and some seem keen to experiment with kde). Yo can use still the android part of your phone as regular, do phone calls etc.?
Here is an older video to give you a rough idea:
https://www.youtube.com/watch?v=iF7yK7HAyVM
Here is also a great interview with one of the main devs at latenight linux.
https://latenightlinux.com/late-night-linux-episode-59
You might also want to read though the posts in their dev group:
https://groups.google.com/forum/#!forum/maru-os-dev

Related

[Q&A] [Ubuntu Touch - Utopic][PORT]STOPED][Test-BUILD][2014-08-27] Ubuntu Touch for

[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

Can not locate config file for product "full_BLU_LIFE_ONE-eng". Stop.

So I have been at my wits end the last couple days trying to figure out exactly what's going on. I have a BLU Life One 2015, (X011Q) which is unsupported on basically every custom ROM/recovery/whatever. There is no repo for it on github, (except my own, which I'm having trouble with, and is the point of this post) no released device tree (if I'm using the right word), the only source code released for it is for the kernel on Android 4.4.4.
This far, I've extracted the required files from the boot.img (I also have the recovery.img and build.prop) using a guide I found on XDA University to build CWM out of the cyanogenmod source code. (I can't post the link to this guide, unfortunately, because I'm too new a user)
Everything in that tutorial goes fine (though it might be worth noting i have to use obbtool instead of otatools) until I get to the point where I have to run "lunch full_’device_name-eng" (For me, this is: lunch full_BLU_LIFE_ONE-eng). When I do, I run into this:
Code:
build/core/product_config.mk:245: *** Can not locate config makefile for product "full_BLU_LIFE_ONE". Stop.
Device BLU_LIFE_ONE not found. Attempting to retrieve device repository from CyanogenMod Github (http //github.com/CyanogenMod).
Repository for BLU_LIFE_ONE 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:245: *** Can not locate config makefile for product "full_BLU_LIFE_ONE". Stop.
build/core/product_config.mk:245: *** Can not locate config makefile for product "full_BLU_LIFE_ONE". Stop.
** Don't have a product spec for: 'full_BLU_LIFE_ONE'
** Do you have the right repo manifest?
In case this is helpful:
From build.prop
Code:
ro.product.brand=BLU
ro.product.device=BLU_LIFE_ONE
Files that were extracted with mkvendor.sh:
Code:
AndroidBoard.mk
AndroidProducts.mk
BoardConfig.mk
cm.mk
device_BLU_LIFE_ONE.mk
kernel
recovery.fstab
system.prop
My main thought is that I'm lacking a device tree, but after searching for others, I wonder what else would be in one, and if the files I've got don't constitute some part of the device tree.
TL;DR
Do I need to create a device tree myself for a device that has no support yet whatsoever for any kind of custom ROM/Recovery? And if so, how?
Any and all help is greatly appreciated.

RR compilation error for unsupported device - out of ideas.

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

[GUIDE] How to build an unsupported rom using sources from other roms

Hello all and welcome to my first how-to guide
I began the process of learning about ROM about 4 months ago (so excuse this post if there are any inaccuracies and please feel free to correct me in the comments - I will absolutely update this post to ensure it has the best information)
Whilst I was trying to learn, I noticed there was a lack of information regarding how the actual build process works. Many roms will provide instructions allowing you to build your own unofficial version for one of their official devices, but very rarely do they inform you as to how you may do this for a device not officially supported.
This is what I shall try and explain here.
Building for a newer version of android is another challenge, so this guide will focus on building an unsupported rom from device sources that support the same version of android (e.g building Lineage oreo from AOSCP oreo sources etc)
Requirements
A relatively fast PC with a least 4 cores (less may work but it will take a long time)
At least 8GB ram
A swap-file set up in the event that your ram is fully filled
A significant amount of storage (each build can take 150-200GB)
Set up your PC for building
Firstly, allocate Jack enough memory to complete the build process by running
Code:
export ANDROID_JACK_VM_ARGS="-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx4G"
And adding that line to your ~/.bashrc file
Also (optional) enable ccache by running
Code:
export USE_CCACHE=1
and adding that to your ~/.bashrc
If you choose to use ccache, also allocate a set amount of memory to use with
Code:
ccache -M $G
Where $ is a value of your choice between 50 and 100
First things first, we need to download the main source code for the target rom
Firstly you need to sync the sources from the manifest of your chosen rom. This will normally be called android, or manifest (or something similar) and will contain some xml files layed out like the example local manifest below
Find this repo and copy the link. Then move to the location you wish the entire android code to be stored, and then perform the following command
Code:
repo init -u <url of manifest repo>.git -b <branch you want to build>
e.g. for lineage 15.1 it would be
Code:
repo init -u https://github.com/LineageOS/android.git -b lineage-15.1
Finally, run "repo sync" to download the source code. It is very large (approximately 30GB) so it will take a while. Should you need to cancel this, a simple CTRL+C will stop it, and it will continue from where it stopped next time you run repo sync
Now we need to understand which components we need to build a custom rom.
We need (anything inside the <> needs to be replaced with relevant information for your device)
A device tree. This contains all the information needed to configure the rom build to your device's needs. Often this comes as more than one repo (one for your exact device and one for the general model - e.g. for my LG G4 H815, we have the h815 repo and the g4-common repo). The format for these repos is generally android_device_<vendor>_<device model>
A kernel. This contains all the drivers and more needed for your device to be able to run Android. Often these are named using your device's chipset name and follow the format android_kernel_<vendor>_<chipset>, although occasionally they can use your model name instead of the chipset.
Proprietary blobs. These are the closed source blobs that come bundled in your OEM software and contain the non-OSS (open source software) drivers for your device. They normally come in a repo labeled proprietary_vendor_<vendor> which normally contains blobs for all the devices released by that vendor (that are supported).
Any other repos specified by the dependencies file (more on that later)
All of the above repos go into the path specified in the name - for example, android_device_<vendor>_<device model> will go into the device/<vendor>/<device model> directory.
To sync these, you should create a local manifest in the <android source>/.repo/local_manifests/ folder. Name it anything you like (make sure it's an xml file) and fill it out like so
Code:
<manifest>
<remote name="<your chosen name for this url>"
fetch="<url to your git organisation>"
revision="<branch if different to the one used in repo init (otherwise, miss out revision)>"
<project name="<name of repo inside git org>" path="<destination of the repo>" remote="<remote name chosen earlier>" revision="<revision if different to one specified above>" />
</manifest>
After adding this manifest, re-run repo sync to pull the extra repos
Understanding the device tree.
Inside the device tree (model specific one if there are more than one) there will be a file with a naming scheme along the lines of <rom brand>.mk (e.g. lineage.mk). This is the starting file for your device and is detected when you begin a build for your device. (Pie roms are currently using AndroidProducts.mk as a placeholder containing a link to this file). It contains links to the common configuration of your device (phone, tablet etc) at the top, and also specifies the name of the product (normally <rom>_<device model>) which is part of the command used to build the device.
There will also be some build prop overrides - these contain information like the device name and the build fingerprint (used to verify to google what device you are - lots of devices leave this as the last stock fingerprint to pass google CTS)
In most device trees, there will also be a <rom>.dependencies file. This contains all the additional repos needed to build for your particular device. This file is parsed automatically if you use the official methods and use the breakfast command. If you do it manually, they must be added to a local manifest.
The <device model>.mk file is what defines what open source packages need to be built in the build. Devices either include everything in this file or they can link to a product folder in which every .mk file is included.
BoardConfig(Common).mk includes configuration options for the device, and often links to config files to inform the builder of certain flags that need to be applied for the build. Similarly to the <device model>.mk, this is often linked to a board folder containing configurations
The kernel
The kernel is a massive topic and one that I cannot explain in depth here. However, for rom building it is useful to know that the defconfigs used to build a kernel are located in kernel/<chipset/device model>/arch/<arm or arm64 depending on device>/configs and the one used is normally in the format <rom>_<device model>_defconfig (e.g my lineage one is lineageos_h815_defconfig). Should you wish to change the name, simply change the name and alter the defconfig name in the BoardConfig.mk for your particular device.
So...to the main part - how do you build a rom.
Essentially there are a few main commands that are spoken about
"source build/envsetup.sh". This runs the builder script and loads all the custom commands.
"breakfast". This simply pulls the device specific code from the official repos. You do not need this if you are building unofficially
"brunch". This effectively performs breakfast, but assuming everything is synced correctly, it will finish without an issue. Then it will go on to begin the build. Normally brunch is run as brunch <rom name>_<device model>-userdebug (or eng if you are developing). User is used for OEM releases but most roms use userdebug as it is slightly more relaxed on conditions
To build a rom from unsupported sources requires a bit of thought. Firstly, ensure you have all the dependencies synced (hopefully from the target rom) as well as the device sources.
Then you need to go into the device tree and modify
The <rom>.mk file to now be renamed to your new rom.
You need to enter that file and modify any stuff relating to your old ROM look for your new rom instead (device type configurations are normally the main one here).
You need to remove any stuff inside your device tree relating to features not in your new rom.
Then run "source build/envsetup.sh"
"brunch <rom>_<device model>-userdebug"
This will hopefully begin the build and assuming everything is setup correctly, should continue through to finish building the rom of your choice
If you have any questions/issues with this process, I will be happy to answer to the best of my ability
Also, big thanks to the LineageOS guide for giving me a basis upon which to base this guide on
PRODUCT_COMPATIBILITY_MATRIX_LEVEL_OVERRIDE directly
Specify Framework Compatibility Matrix Version in device manifest by adding a target-level attribute to the root element <manifest>. If PRODUCT_COMPATIBILITY_MATRIX_LEVEL_OVERRIDE is 26 or 27, you can add "target-level"="1" to your device manifest instead.
how to implement this?
nadeem_naddy said:
PRODUCT_COMPATIBILITY_MATRIX_LEVEL_OVERRIDE directly
Specify Framework Compatibility Matrix Version in device manifest by adding a target-level attribute to the root element <manifest>. If PRODUCT_COMPATIBILITY_MATRIX_LEVEL_OVERRIDE is 26 or 27, you can add "target-level"="1" to your device manifest instead.
how to implement this?
Click to expand...
Click to collapse
Sorry for the late reply
What Android version are you building (this determines the api level). Also, what rom and device (links are helpful as I can see what it going on)
I would imagine you need something like https://github.com/LineageOS/androi...mmit/c24f0fff1fb1fc46d638e91777281ec7efc3e239
ThePiGuy said:
Sorry for the late reply
What Android version are you building (this determines the api level). Also, what rom and device (links are helpful as I can see what it going on)
I would imagine you need something like https://github.com/LineageOS/androi...mmit/c24f0fff1fb1fc46d638e91777281ec7efc3e239
Click to expand...
Click to collapse
i did not get the way to override or more precisely i dont know where to put the code to over ride this flag so i simply commented this in BoardConfig.mk itself. as it says its deprecated.
now i encounter this -
66% 2/3] glob frameworks/base/core/java/**/*.java
ninja: error: unknown target 'nitrogen_X00TD'
01:34:03 ninja failed with: exit status 1
it would be great help if you let me know from where does frameworks pick the device info in device tree. where do we need to set path.. i am building nitrogen pie for my device X00TD. thanks
the latest issue am facing is -
ninja: error: '/home/matin1117/nitrogen/out/target/common/obj/java_libraries/qcrilhook_intermediates/classes.jar', needed by '/home/matin1117/nitrogen/out/target/common/obj/packaging/boot-jars-package-check_intermediates/stamp', missing and no known rule to make it.
please suggest a fix.
thanks,
Nadeem
nadeem_naddy said:
the latest issue am facing is -
ninja: error: '/home/matin1117/nitrogen/out/target/common/obj/java_libraries/qcrilhook_intermediates/classes.jar', needed by '/home/matin1117/nitrogen/out/target/common/obj/packaging/boot-jars-package-check_intermediates/stamp', missing and no known rule to make it.
please suggest a fix.
thanks,
Nadeem
Click to expand...
Click to collapse
Is Pie ready for your device. For most ROMs it requires a lot of cherry-picking etc before it will build
ThePiGuy said:
Is Pie ready for your device. For most ROMs it requires a lot of cherry-picking etc before it will build
Click to expand...
Click to collapse
yes the device have many pie roms but i want to build nitrogen. i
can see niteogen os pie built for many other phones using sd636.
nadeem_naddy said:
yes the device have many pie roms but i want to build nitrogen. i
can see niteogen os pie built for many other phones using sd636.
Click to expand...
Click to collapse
Pie is an oddball case at the moment. Many ROMs work if you cherry-picking fixes off Gerrit (I built Pie Lineage for my G4 but it required about 20 cherry-picks off the lineage Gerrit before it built)
In your case, it looks like you are possibly missing a ril-caf repo (look in the nos.xml and you will see only the non-caf repo is being synced). You can add the caf one but it's possible it isn't ready yet
thanks a lot, i can see one ril related entry in nos.xml. let me do some research on it.
thanks a lot for all your help buddy.
iam facing this error ? can u help please..... ?
see attachment ! 
 @ThePiGuy
Thanks in advance
vignesh95 said:
iam facing this error ? can u help please..... ?
see attachment !
@ThePiGuy
Thanks in advance
Click to expand...
Click to collapse
Ok can you show me the result of
Code:
ls device/oneplus
here u have it (see attachment)
ThePiGuy said:
Ok can you show me the result of
Code:
ls device/oneplus
Click to expand...
Click to collapse
Hi @ThePiGuy
vignesh95 said:
Hi @ThePiGuy
Click to expand...
Click to collapse
ok. And now
Code:
ls device/oneplus/oneplus2
here u have it (see attachment)
ThePiGuy said:
ok. And now
Code:
ls device/oneplus/oneplus2
Click to expand...
Click to collapse
revised 
 @ThePiGuy
vignesh95 said:
revised
@ThePiGuy
Click to expand...
Click to collapse
Ok. Sorry for the late reply.
You need to open the AndroidProducts.mk file and rename the lineage_oneplus2.mk line to aosp_oneplus2.mk.
You also need to change the lineage_oneplus2.mk file so it is called aosp_oneplus2.mk, and inside it you need to change any occurrences to aosp (basically you are rebranding the device tree to use the aosp versions rather than the lineage branded ones)
ThePiGuy said:
Ok. Sorry for the late reply.
You need to open the AndroidProducts.mk file and rename the lineage_oneplus2.mk line to aosp_oneplus2.mk.
You also need to change the lineage_oneplus2.mk file so it is called aosp_oneplus2.mk, and inside it you need to change any occurrences to aosp (basically you are rebranding the device tree to use the aosp versions rather than the lineage branded ones)
Click to expand...
Click to collapse
thanks! @ThePiGuy
now i am getting this error
[944/944] including vendor/qcom/opensource/dataservices/Android.mk ...
device/oppo/common/configpanel/Android.mk: error: ConfigPanel (APPS android-arm64) missing org.lineageos.platform.internal (JAVA_LIBRARIES android-arm64)
You can set ALLOW_MISSING_DEPENDENCIES=true in your environment if this is intentional, but that may defer real problems until later in the build.
build/make/core/main.mk:837: error: exiting from previous errors.
20:05:06 ckati failed with: exit status 1
#### failed to build some targets (03:05 (mm:ss)) ####
Please help !
vignesh95 said:
thanks! @ThePiGuy
now i am getting this error
[944/944] including vendor/qcom/opensource/dataservices/Android.mk ...
device/oppo/common/configpanel/Android.mk: error: ConfigPanel (APPS android-arm64) missing org.lineageos.platform.internal (JAVA_LIBRARIES android-arm64)
You can set ALLOW_MISSING_DEPENDENCIES=true in your environment if this is intentional, but that may defer real problems until later in the build.
build/make/core/main.mk:837: error: exiting from previous errors.
20:05:06 ckati failed with: exit status 1
#### failed to build some targets (03:05 (mm:ss)) ####
Please help !
Click to expand...
Click to collapse
Sorry, I don't think I can help with that
Make sure your build environment is set up correctly (wiki.lineageos.org/devices/oneplus2/build will help with that) and also ensure you are using Pie device sources (from what I have gathered you are trying to build Pie, but if you are using device trees and kernel from Oreo or anything else then it will require much more than this guide details)
Hi bro, i want to build lineage OS for unsupported device(Xiaomi Vince), please give me the step
---------- Post added at 08:57 AM ---------- Previous post was at 07:58 AM ----------
iam get error like this
including vendor/lineage/vendorsetup.sh
build/make/core/envsetup.mk:264: error: TARGET_ARCH not defined by board config: device/xiaomi/vince/BoardConfig.mk.
15:41:16 dumpvars failed with: exit status 1
Device vince not found. Attempting to retrieve device repository from LineageOS Github (http://github.com/LineageOS).
Repository for vince not found in the LineageOS Github repository list. If this is in error, you may need to manually add it to your local_manifests/roomservice.xml.
build/make/core/envsetup.mk:264: error: TARGET_ARCH not defined by board config: device/xiaomi/vince/BoardConfig.mk.
15:41:18 dumpvars failed with: exit status 1
build/make/core/envsetup.mk:264: error: TARGET_ARCH not defined by board config: device/xiaomi/vince/BoardConfig.mk.
15:41:19 dumpvars failed with: exit status 1
** Don't have a product spec for: 'aosp_vince'
** Do you have the right repo manifest?
No such item in brunch menu. Try 'breakfast'
Click to expand...
Click to collapse
Help me
Hey
I have a common device source, which has linked my device to 3 more configuration files. I tried to change lineage to other rom in every possible location I can find but on building this error comes into action.
The error is same for every AOSP based rom
[email protected]:~/AEX$ mka aex -j4
vendor/aosp/config/bootanimation.mk:32: warning: Target bootanimation res is undefined, using generic bootanimation
============================================
▄▄▄ ▓█████ ▒██ ██▒
▒████▄ ▓█ ▀ ▒▒ █ █ ▒░
▒██ ▀█▄ ▒███ ░░ █ ░
░██▄▄▄▄██ ▒▓█ ▄ ░ █ █ ▒
▓█ ▓██▒░▒████▒▒██▒ ▒██▒
▒▒ ▓▒█░░░ ▒░ ░▒▒ ░ ░▓ ░
▒ ▒▒ ░ ░ ░ ░░░ ░▒ ░
░ ▒ ░ ░ ░
░ ░ ░ ░ ░ ░
AospExtended-v6.3 9
============================================
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=9
EXTENDED_MOD_VERSION=AospExtended-v6.3-20190311-0935-UNOFFICIAL
TARGET_PRODUCT=aosp_fortuna3g
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv8-a
TARGET_CPU_VARIANT=cortex-a53
HOST_ARCH=x86_64
HOST_2ND_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-4.15.0-20-generic-x86_64-Linux-Mint-19
HOST_CROSS_OS=windows
HOST_CROSS_ARCH=x86
HOST_CROSS_2ND_ARCH=x86_64
HOST_BUILD_TYPE=release
BUILD_ID=PQ2A.190205.001
OUT_DIR=/home/jmpfbmx/AEX/out
PRODUCT_SOONG_NAMESPACES= hardware/qcom/audio-caf/msm8916 hardware/qcom/display-caf/msm8916 hardware/qcom/media-caf/msm8916
============================================
[1/1] /home/jmpfbmx/AEX/out/soong/.minibootstrap/minibp /home/jmpfbmx/AEX/out/soong/.bootstrap/build.ninja
[55/56] glob prebuilts/ndk/stl.bp
[80/80] /home/jmpfbmx/AEX/out/soong/.bootstrap/bin/soong_build /home/jmpfbmx/AEX/out/soong/build.ninja
/home/jmpfbmx/AEX/out/build-aosp_fortuna3g-cleanspec.ninja is missing, regenerating...
vendor/aosp/config/bootanimation.mk:32: warning: Target bootanimation res is undefined, using generic bootanimation
/home/jmpfbmx/AEX/out/build-aosp_fortuna3g.ninja is missing, regenerating...
vendor/aosp/config/bootanimation.mk:32: warning: Target bootanimation res is undefined, using generic bootanimation
[25/1110] including development/build/Android.mk ...
development/build/build_android_stubs.mk:43: warning: android_stubs_current
development/build/build_android_stubs.mk:43: warning: metalava_android_stubs_current metalava_android_stubs_current
development/build/build_android_stubs.mk:43: warning: android_system_stubs_current
development/build/build_android_stubs.mk:43: warning: android_test_stubs_current
development/build/build_android_stubs.mk:43: warning: metalava_android_system_stubs_current metalava_android_system_stubs_current
development/build/build_android_stubs.mk:43: warning: metalava_android_test_stubs_current metalava_android_test_stubs_current
[271/1110] including frameworks/av/camera/Android.mk ...
frameworks/av/camera/cameraserver/Android.mk:18: warning: Target has integrated cameraserver into mediaserver. This is weakening security measures introduced in 7.0
[607/1110] including system/sepolicy/Android.mk ...
system/sepolicy/Android.mk:88: warning: Be careful when using the SELINUX_IGNORE_NEVERALLOWS flag. It does not work in user builds and using it will not stop you from failing CTS.
[1110/1110] including vendor/samsung/serranovexx-common/Android.mk ...
bootable/recovery/Android.mk: error: recovery (EXECUTABLES android-arm) missing libhealthd.lineage (STATIC_LIBRARIES android-arm)
You can set ALLOW_MISSING_DEPENDENCIES=true in your environment if this is intentional, but that may defer real problems until later in the build.
device/samsung/qcom-common/doze/Android.mk: error: SamsungDoze (APPS android-arm) missing org.lineageos.platform.internal (JAVA_LIBRARIES android-arm)
You can set ALLOW_MISSING_DEPENDENCIES=true in your environment if this is intentional, but that may defer real problems until later in the build.
hardware/interfaces/health/1.0/default/Android.mk: error: [email protected] (SHARED_LIBRARIES android-arm) missing libhealthd.lineage (STATIC_LIBRARIES android-arm)
You can set ALLOW_MISSING_DEPENDENCIES=true in your environment if this is intentional, but that may defer real problems until later in the build.
hardware/samsung/AdvancedDisplay/Android.mk: error: AdvancedDisplay (APPS android-arm) missing org.lineageos.platform.internal (JAVA_LIBRARIES android-arm)
You can set ALLOW_MISSING_DEPENDENCIES=true in your environment if this is intentional, but that may defer real problems until later in the build.
system/core/healthd/Android.mk: error: charger (EXECUTABLES android-arm) missing libhealthd.lineage (STATIC_LIBRARIES android-arm)
You can set ALLOW_MISSING_DEPENDENCIES=true in your environment if this is intentional, but that may defer real problems until later in the build.
build/make/core/main.mk:850: error: exiting from previous errors.
10:40:35 ckati failed with: exit status 1
build/make/core/main.mk:21: recipe for target 'run_soong_ui' failed
make: *** [run_soong_ui] Error 1
#### failed to build some targets (05:24 (mm:ss)) ####
itexpert.120 said:
Hey
I have a common device source, which has linked my device to 3 more configuration files. I tried to change lineage to other rom in every possible location I can find but on building this error comes into action.
The error is same for every AOSP based rom
[email protected]:~/AEX$ mka aex -j4
vendor/aosp/config/bootanimation.mk:32: warning: Target bootanimation res is undefined, using generic bootanimation
Click to expand...
Click to collapse
Ok so what it looks like - did you sync only the device trees and any common ones and then use the "brunch" or "breakfast" command to download the rest of the repos. If so, then it's still pulled the repos from lineage (in all the dependency files, you can see where they come from)
If you did, try finding the AEX equivalent repo and replacing that in the .dependency file that it is referred to in.
If this is not what you did, please detail what you did to get your environment

Help porting Ubuntu touch to the Galaxy A10

Hey I've been trying to port Ubuntu touch to the A10 following the official guide located here. I've found the device repository for the a10 here, and vendor blobs here. So the XML manifest file I ended up with is this:
XML:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote name="a10_remote" fetch = "https://github.com/geckyn" revision="lineage-16.0"/>
<project path="device/samsung/a10" name="android_device_samsung_a10" remote="a10_remote"/>
<project path="kernel/samsung/a10" name="android_kernel_samsung_exynos7885" remote="a10_remote"/>
<project path = "vendor/samsung/a10" name="proprietary_vendor_samsung_a10" remote="a10_remote"/>
</manifest>
The "./halium/devices/setup a10" command exits with no errors. But then when I run "breakfast a10", I get the following output:
build/core/product_config.mk:249: *** Can not locate config makefile for product "lineage_a10". Stop.
build/core/product_config.mk:249: *** Can not locate config makefile for product "cm_a10". Stop.
build/core/product_config.mk:249: *** Can not locate config makefile for product "lineage_a10". Stop.
Device a10 not found. Attempting to retrieve device repository from LineageOS Github (http://github.com/LineageOS).
Repository for a10 not found in the LineageOS Github repository list. If this is in error, you may need to manually add it to your lo
cal_manifests/roomservice.xml.
build/core/product_config.mk:249: *** Can not locate config makefile for product "lineage_a10". Stop.
build/core/product_config.mk:249: *** Can not locate config makefile for product "lineage_a10". Stop.
** Don't have a product spec for: 'lineage_a10'
** Do you have the right repo manifest?
The A10 doesn't have an official Lineage OS port, in my knowledge, so I understand that there would be no reference to it on Lineage's GitHub. And I don't mention this repository in my manifest. Why do I get this error then?
Hi, The official support of lineageOS 17.1 for the Samsung galaxy a10 at this time is not released.
You can use the source code of the unofficial port of lineageOS in this thread here : https://forum.xda-developers.com/t/...7-1-for-galaxy-a10-exynos-unofficial.4146815/
section Source Code.
I'm glad you're taking the time to wear this phone model, I've been waiting for a portage for a long time!
I'm french, sorry for my english.
Sundev79 said:
Hi, The official support of lineageOS 17.1 for the Samsung galaxy a10 at this time is not released.
You can use the source code of the unofficial port of lineageOS in this thread here : https://forum.xda-developers.com/t/...7-1-for-galaxy-a10-exynos-unofficial.4146815/
section Source Code.
I'm glad you're taking the time to wear this phone model, I've been waiting for a portage for a long time!
I'm french, sorry for my english.
Click to expand...
Click to collapse
Yeah I'm using the unofficial sources. The error I had above was apparently because of an uncompleted checkout. I am now stuck at another error while building. The entire output from make is here - https://pastebin.com/aznxR9rW. I'd be delighted if you could help.
I working on it, i trying to building halium on lineage-17.1 branch.
Ok, can you help-me, i have this error while launch the command breakfast :
Code:
[email protected]:~/halium-10.0$ breakfast a10
device/samsung/a10/BoardConfig.mk:153: error: device/samsung_slsi/sepolicy/sepolicy.mk: No such file or directory
15:23:39 dumpvars failed with: exit status 1
Device a10 not found. Attempting to retrieve device repository from LineageOS Github (http://github.com/LineageOS).
Repository for a10 not found in the LineageOS Github repository list. If this is in error, you may need to manually add it to your local_manifests/roomservice.xml.
device/samsung/a10/BoardConfig.mk:153: error: device/samsung_slsi/sepolicy/sepolicy.mk: No such file or directory
15:23:41 dumpvars failed with: exit status 1
device/samsung/a10/BoardConfig.mk:153: error: device/samsung_slsi/sepolicy/sepolicy.mk: No such file or directory
15:23:43 dumpvars failed with: exit status 1
** Don't have a product spec for: 'lineage_a10'
** Do you have the right repo manifest?
[email protected]:~/halium-10.0$
I don't know much about halium 10. I'm building using Halium 9 and Lineage OS 16 sources. I've been able to build halium-boot.img successfully. I'm not the right person to ask as I haven't made a port before. I can make a log of all the steps I took with Halium 9 if you want. @Halium on Telegram will probably be the best place for clarifications. Good luck!
Hi ! do you have succeeded to a bootable build ? what tour advancement ?
Hi, were you able to carry it at the end ?? I am wanting to use ubuntu touch and I only found this thread related to that

Categories

Resources