yashsingh1/xdaforums huggingface dataset:
[Android General] AlaskaLinuxUser:
Great work!

So, I suggest you go through each tombstone and look at the output, and make the needed changes.

I just posted a video about looking at tombstones here: https://www.youtube.com/watch?v=qMc8Nj7yArA&index=14&t=0s&list=PLRJ9-cX1yE1lm9qFpVkOBO1oFJVFFK-fk

And I can work with you through a few. For instance, in the tombstone_00, notice line 295/296/297:

0000007f4b7f34a8 000000003f800000 207972617262696c ...?....library
0000007f4b7f34b8 7475647162696c22 20226f732e736c69 "libqdutils.so"
0000007f4b7f34c8 6e756f6620746f6e 0000000000000064 not found.......

So either libqdutils.so is missing, or it is in the wrong place. :good:
[Android General] omercicek43:
So I just have to find this file for Oreo and edit the vendor make file?
[Android General] AlaskaLinuxUser:
Typically libqutils is build from /hardware/qcom/display, does that folder exist? Are you building libqutils? if you search your /out folder, do you find libqutils.so?
[Android General] omercicek43:
The folder exits but the .so file doesn't.
[Android General] AlaskaLinuxUser:
Okay, so now you need to build it. It is in the /hardware/qcom/display/ <msmsxxxx number for your device >/libqutils folder.

Do you have a link to your source device tree? In the /hardware/qcom/display/ or display-caf folder, is an Android.mk file that queries your device tree and builds the appropriate display drivers you need to make it work. Somehow, your device tree is not helping you out by specifying which one to build.
[Android General] omercicek43:
https://github.com/LineageOS/android_device_xiaomi_jason

Here it is.

---------- Post added at 10:33 PM ---------- Previous post was at 09:44 PM ----------

/There isn't such a file inside other roms tho. Maybe that's why.
[Android General] dargonswim:
Thank you for your help. Im trying in order branch of OMNIROM, because i cant fix it. I'm concretely trying Pie and i get others warning and errors:

Warnings:

system/sepolicy/Android.mk:79: warning: BOARD_SEPOLICY_VERS not specified, assuming current platform version

system/sepolicy/Android.mk:89: 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.

[907/907] including vendor/omni/Android.mk ...

build/make/core/base_rules.mk:412: warning: overriding commands for target `/home/dargons10/omni_p/out/target/product/mocha/root/res/images/charger/battery_fail.png'

build/make/core/base_rules.mk:412: warning: ignoring old commands for target `/home/dargons10/omni_p/out/target/product/mocha/root/res/images/charger/battery_fail.png'

build/make/core/base_rules.mk:412: warning: overriding commands for target `/home/dargons10/omni_p/out/target/product/mocha/root/res/images/charger/battery_scale.png'

build/make/core/base_rules.mk:412: warning: ignoring old commands for target `/home/dargons10/omni_p/out/target/product/mocha/root/res/images/charger/battery_scale.png'

build/make/core/Makefile:28: warning: overriding commands for target `/home/dargons10/omni_p/out/target/product/mocha/system/etc/mkshrc'

build/make/core/base_rules.mk:412: warning: ignoring old commands for target `/home/dargons10/omni_p/out/target/product/mocha/system/etc/mkshrc'

xternal/ntfs-3g/include/ntfs-3g/endians.h:55:9: warning: '__BYTE_ORDER' macro redefined [-Wmacro-redefined]

and the next error

/home/dargons10/omni_p/kernel/xiaomi/mocha/scripts/kconfig/Makefile:106: recipe for target 'tegra12_android_defconfig' failed

make[2]: *** [tegra12_android_defconfig] Error 1

/home/dargons10/omni_p/kernel/xiaomi/mocha/Makefile:506: recipe for target 'tegra12_android_defconfig' failed

make[1]: *** [tegra12_android_defconfig] Error 2

Makefile:130: recipe for target 'sub-make' failed

make: *** [sub-make] Error 2

make: se sale del directorio '/home/dargons10/omni_p/kernel/xiaomi/mocha'

[ 8% 5345/64123] Notice file: external/apache-http/NOTICE -- /home/dargon.../obj/NOTICE_FILES/src/system/framework/org.apache.http.legacy.boot.jar.txt

ninja: build stopped: subcommand failed.
[Android General] AlaskaLinuxUser:
Yeah, so a cursory look reveals that you are right, it doesn't work that way on that device (it would seem), there is no display or display-caf that I can find which covers a target board platform of sdm660. So maybe that error, while it is a tombstone, is not completely killing your Android boot up.

I guess the thing to do now would be to either go through each of your tombstones and try to resolve them, so those processes will quit dying. But I think you may need device specific help on this one. I'm not familiar with the device, but does it build if you build LineageOS 15.1? If so, then there would obviously be something in the Los source that you need to add to your rom source as well.
[Android General] AlaskaLinuxUser:
The warnings can typically be ignored. They may need to be dealt with in the future, but don't cause the build to stop.

The error is simply saying that your chosen defconfig file for your kernel is not right, not being found, or your kernel is not in the properly named folder.
[Android General] omercicek43:
I've already asked all of devs. None of them answered. Selfish people everywhere.

/ I've found Nougat OmniRom tree for my device. Too many files for me to keep track of. :D https://github.com/MiNote3Dev/android_device_xiaomi_jason/tree/omni-n
[Android General] rhutik:
Sir

I have two trees one mido and msm8953-common

Can i merge those in one by editing some path maps and stuff

And make it as one like other device s have one tree?
[Android General] AlaskaLinuxUser:
Great question.

Yes and no.

Yes, you can do that. You can do anything you want. Yes, if you do that it will work.

No you shouldn't do that, because you currently benefit from other people with the common part of the phone updating and working on the material. You will lose the easy use of the common part by making yours not use the common portion. E.g. all msm8953 phones need to do this update to work with android version pie, let's say. So if you keep using the common tree, you will benefit from someone else updating the common phone. You will have to manually update your singled tree every time. It will cost you a lot of time in the long run.

Does that answer your question?
[Android General] :
Great Guide! ❤❤
[Android General] rhutik:
Thanks sir:good:

---------- Post added at 06:07 AM ---------- Previous post was at 06:06 AM ----------

Sir y Don't u make a telegram group , about helping eachother in rom build, it would be great to interact
[Android General] AlaskaLinuxUser:
You are welcome! Hope the videos help!

Well, I tried that before, but there are several problems with that:

For one, if you post a question here, others can reference it later, even if they join much later. With telegram, I end up repeating the same information 20 times. :p

Second, I end up everyone's slave. Constantly asking questions and not searching for answers or reading/watching the guide. "Why spend an hour looking when you can just ask the guy?" sort of problem. :silly:

Third, everyone knows when I'm on telegram, as you know when people are logged in. Here, I can come and go as I please. :D

Finally, this is something I do as a hobby in my spare time. I like helping people, but it's not my job. I don't make any money from this, so it's just something i do when i feel like it. So the less entangled, the better. :good:

However, you are welcome to start a telegram group for others to join you. But I'll probably stay clear of it. :)
[Android General] rhutik:
Sorry sir

Just thought of asking

Ur point of people not search and asking is true

Trying to solve errors by ourselves is the best way of learning

If the error is headbreaking thn we can reach out to u here

Thanks for such a clear guide and helping us

:)
[Android General] malikpk:
thanks.
[Android General] :
There's also a problem that's " Arabic spam - Arabic porn spam - common spammers - bitcoin lover spammers - Iran spam " they all r pain !

And telegram bans group immediately for that !
[Android General] srgrusso:
[MENTION=7026648]AlaskaLinuxUser[/MENTION] I'm trying to add some prebuilt apps into my RR treble build. Things are a little different than building a device specific rom. I was wonder if you could look at my "rr.mk" file and give a little input.

$(call inherit-product, vendor/rr/config/common_full_phone.mk)
$(call inherit-product, device/rr/sepolicy/common/sepolicy.mk)

# Boot animation
TARGET_SCREEN_WIDTH := 1200
TARGET_SCREEN_HEIGHT := 1920
TARGET_BOOTANIMATION_HALF_RES := true

include $(CLEAR_VARS)
LOCAL_MODULE := Launcher3
LOCAL_SRC_FILES := vendor/addons/files/$(LOCAL_MODULE).apk
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_SUFFIX := .apk
LOCAL_MODULE_CLASS := APPS
LOCAL_CERTIFICATE := PRESIGNED
include $(BUILD_PREBUILT)

include $(CLEAR_VARS)
LOCAL_MODULE := pixelbridge
LOCAL_SRC_FILES := vendor/addons/files/$(LOCAL_MODULE).apk
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_SUFFIX := .apk
LOCAL_MODULE_CLASS := APPS
LOCAL_CERTIFICATE := PRESIGNED
include $(BUILD_PREBUILT)

PRODUCT_PACKAGES += \
Launcher3 \
pixelbridge

Thanks.

Edit: it looks like I was totally off with this. Here is where I am at.

I followed your instructions from here https://thealaskalinuxuser.wordpress.com/2016/08/12/adding-pre-built-apps-to-your-build/ .

device/phh/treble/prebuilt/Android.mk

# Copyright (C) 2012 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the “License”);
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an “AS IS” BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

LOCAL_PATH := $(call my-dir)

#
# Prebuilt APKs
#

include $(CLEAR_VARS)
LOCAL_MODULE := pixelbridge
LOCAL_MODULE_OWNER := rr
LOCAL_SRC_FILES := common/app/$(LOCAL_MODULE).apk
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_SUFFIX := .apk
LOCAL_MODULE_CLASS := APPS
LOCAL_CERTIFICATE := PRESIGNED
include $(BUILD_PREBUILT)

device/phh/treble/rr.mk

$(call inherit-product, vendor/rr/config/common_full_phone.mk)
$(call inherit-product, device/rr/sepolicy/common/sepolicy.mk)

# Boot animation
TARGET_SCREEN_WIDTH := 1200
TARGET_SCREEN_HEIGHT := 1920
TARGET_BOOTANIMATION_HALF_RES := true

PRODUCT_PACKAGES += \
Launcher3 \
pixelbridge

Launcher3 is getting built from source. I had to remove Trebuchet do to conflicts. I will have to figure out how to make this permanent or how to make them coexist. I'm still in the building processes so I'm waiting to see how this turns out. I have my fingers crossed.

Edit: I don't know what I did wrong neither of the files got installed. :(
[Android General] AlaskaLinuxUser:
Your edited second work looks pretty good. However, instead of adding those lines to RR.mk, add them to device.mk file.

You can watch the video here too: https://www.youtube.com/watch?v=_UE...cX1yE1l6eu-vkgsj61U-Zv3fjzwZ&t=0s&app=desktop

If that helps clear things up.

In the rr.mk file, it uses :=, but in the device file you use +=, which is what you need to add more packages. :good:
[Android General] Jevinruv:
I am trying to build device trees for Xperia M4 Aqua, when i tried to do so there are includes which has this common repos, It gets complicated then. i watched your playlist to build from scratch.

So i tried comparing 2 devices which has the same chipset, (Lineage trees) and they both are made differently from one another. Meaning a device having wifi files and the other not in the device tree.

What advise can you give? and is it possible to redo the build device tree from scratch in HD for a different device? using windows environment and using google cloud platform to build? this would be a great video guide for beginners like me.

Thank you [MENTION=7026648]AlaskaLinuxUser[/MENTION]
[Android General] AlaskaLinuxUser:
Well, in not sure how much more HD I can get than 1080p, as that is what the "device tree from scratch" video series is already. :D

As for videos using windows, you are right, I don't really cover that, but I also don't own a windows computer, but I'll think on it. No promises, though. :good:

When it comes to which tree to copy from, you should choose the closest to your device. For the blox2, that I did in the video, I used 2 different devices as guides, but one as the primary. Essentially, I picked the one that I felt was closest and went with it. But you can always try another if it doesn't work out. ;)

Hope that helps! Also, I recommend using the advanced thread for discussion of the advanced topics like these: https://xdaforums.com/android/general/guide-intermediate-to-advanced-custom-t3823927

:good:
[Android General] AlaskaLinuxUser:
Well, actually, I suppose you could add it there to the rr.mk file, but typically I use the device.mk file.

The += just means add to the line for PRODUCT_PACKAGES, so it only wouldn't work in the rr.mk file if the PRODUCT_PACKAGES has not been called yet, since you are asking to add to it. I'm not quite sure, but I always put it in the device.mk file. <device.mk, or full_device.mk>
[Android General] srgrusso:
I'm going to have to investigate. When building a GSI Rom there is no device.mk. as far as I can tell because it's not device specific. I can always copy them over by hand during the build process. Could I apply a patch to accomplish this?
[Android General] srgrusso:
Well I did everything over and I still don't know what I'm doing wrong. First off I'm building my rom with phhusson's scripts https://github.com/phhusson/treble_experimentations/wiki/How-to-build-a-GSI?. Here is what I have.

device/phh/treble/rr.mk

$(call inherit-product, vendor/rr/config/common_full_phone.mk)
$(call inherit-product, device/rr/sepolicy/common/sepolicy.mk)

# Inherit device configuration
$(call inherit-product, device/phh/treble/device.mk)

device/phh/treble/device.mk

LOCAL_PATH := device/phh/treble

# Boot animation
TARGET_SCREEN_WIDTH := 1200
TARGET_SCREEN_HEIGHT := 1920
TARGET_BOOTANIMATION_HALF_RES := true

PRODUCT_PACKAGES += \
Launcher3 \
pixelbridge

device/phh/treble/Android.mk

LOCAL_PATH := device/phh/treble

#
# Prebuilt APKs
#

include $(CLEAR_VARS)
LOCAL_MODULE := Launcher3
LOCAL_MODULE_OWNER := rr
LOCAL_SRC_FILES := prebuilt/common/app/$(LOCAL_MODULE).apk
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_SUFFIX := .apk
LOCAL_MODULE_CLASS := APPS
LOCAL_CERTIFICATE := PRESIGNED
include $(BUILD_PREBUILT)

include $(CLEAR_VARS)
LOCAL_MODULE := bixelbridge
LOCAL_MODULE_OWNER := rr
LOCAL_SRC_FILES := prebuilt/common/app/$(LOCAL_MODULE).apk
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_SUFFIX := .apk
LOCAL_MODULE_CLASS := APPS
LOCAL_CERTIFICATE := PRESIGNED
include $(BUILD_PREBUILT)

ls device/phh/treble/prebuilt/common/app

Launcher3.apk pixelbridge.apk

Am I missing something obvious? :eek:

Edit: I know it is sourcing device.mk because it's building the boot animation.
[Android General] AlaskaLinuxUser:
Hmmm... I'm not sure what those scripts are, or what they do.

In your Android.mk file, though, you do have a typo:

LOCAL_MODULE := bixelbridge

Which would point to the wrong thing.

However, if it was not adding them, you would get an error saying it can't find them.

If you search your entire out directory, can you find them? Maybe they are ending up in the wrong place.

Another option is:

PRODUCT_COPY_FILES += \

Directory/path/folder/app.apk:system/app/or/privapp/app.apk

That would copy the app over too. Just not the recommended way. :good:
[Android General] Talker1725:
Outdated phone

So...Can I get a new ROM for my outdated L phone? :(
[Android General] AlaskaLinuxUser:
Ah, I missed that you were doing a Generic System Image rom. I have never built one of those, and so I'm not sure that it works the same. I apologize, I didn't realize what it was you were doing. :good:

Sure, are you ready to start building it? These guides will help you do that.... :D
[Android General] srgrusso:
It's ok. They're not that bad to build when you use the scripts I found a file called base.mk that has entries in it for additional packages and files. I'll try putting it in there. I think I'll try compiling one and copying one. I'll post my results.
[Android General] AlaskaLinuxUser:
Great! Because I'd like to know, too! :good:
[Android General] AlaskaLinuxUser:
Just a reminder, there is an advanced thread as well, and I just made a few updates:

https://xdaforums.com/android/general/guide-intermediate-to-advanced-custom-t3823927

So be sure to check that out if you need to look at more advanced topics like:

A. Building a device tree from scratch

B. Upgrading a device tree from one version to the next

C. Making your very own custom rom

Thanks!
[Android General] srgrusso:
After fixing the typo for pixelbridge it copied over fine. So one done and one to go. Launcher3 didn't copy over and Trebuchet disappeared. I deleted Trebuchet and added the Launcher3 source and it still didn't build. I'm trying to have it copied over prebuilt now just like pixelbridge . So using Android.mk and device.mk works. I hate to ask a stupid question but where is the build log located?

Edit: I found this in the Trebuchet Android.mk

LOCAL_OVERRIDES_PACKAGES := Home Launcher2 Launcher3

If I delete the package source for Trebuchet it shouldn't affect it right?
[Android General] dargonswim:
Good morning. With so many problems that gave me java in ubuntu 18.04 when trying to compile OmniROM for MiPad 1, I finally decided to change the operating system to ubuntu 14.04 and has changed rom base.

Now I'm trying HAVOC-OS Oreo, and it's going better but I had the next kernel problem:

make: *** [sub-make] Error 2

make: se sale del directorio «/home/dargons10/havoc_o/kernel/xiaomi/mocha»

[ 15% 10889/69917] build /home/dargons10/havoc_o/out/target/product/mocha/obj/changelog.txt

Generating changelog...

ninja: build stopped: subcommand failed.

22:49:47 ninja failed with: exit status 1
[Android General] AlaskaLinuxUser:
If it calls for something and you delete the source for it, you will get an error during build that it cannot find it. So, you have to delete the source, and the call for it. But in your case, you are replacing it with another source, that provides the same name, so it *should* be okay. Great work on adding pixelbridge! :highfive:

Most custom roms do not output a build log. However, you can enable it with:

brunch <rom>_<device>-<type> | tee logs.txt

Which I almost always do for my own builds, because as it builds, each output line to the terminal is also written to "logs.txt" file in your rom directory. After the build you can just open, read, and search it. :good:

dargonswim,

The error happened before here. You need the part that says "FAILED:" or "ERROR:" when you find that, you can do a quick web search for it, as almost all builds have issues, and yours will not be the first time someone saw it. Also, you can search this thread for that error, as several errors are here, and you can search my website: thealaskalinuxuser.wordpress.com, where I have several dozen errors posted as well. If you can't find anything on it, post it here, and I will take a look at it with you. :good:
[Android General] dargonswim:
I can't found this line, ubuntu terminal doesn't go up that much to me. Its in ninja.log or soon.log file where i can found the error?
[Android General] AlaskaLinuxUser:
Build it again, but use this:

brunch <rom>_<device>-<type> | tee logs.txt

To make a logs.txt file that you can read in your rom folder. Then you can search it with gedit.
[Android General] dargonswim:
Thanks a lot.

Enviado desde mi MI 6 mediante Tapatalk
[Android General] dargonswim:
Good, to compile a rom is better to put LOCAL_CLANG := TRUE or FALSE?

If I put it in true the compilation arrives later before jumping some error.

If I put it in false it jumps before.
[Android General] AlaskaLinuxUser:
Since Android Nougat, CLANG is the default. Some apps or services are still built without it if they specify not to use it. And the Kernel is compiled with a separate tool chain. So you shouldn't have to specify it, unless you are building lower versions of Android. :good:
[Android General] AlaskaLinuxUser:
Just an FYI, I am working on videos for kernel development. This time it will be in HD, and I am going to be using a 64 bit phone, as opposed to the 32 bit one in previous videos. :good:

If you have video requests, I can't do everything, but it can't hurt to ask. The two intermediate/advanced video series up right now were by request, so if there is something that you are interested in seeing, be sure to mention it, and I'll give it due consideration. :D
[Android General] Susan Dahal:
Would you be making the OC ones too. Please make those
[Android General] Atifbaig786:
I am trying to build a Nougat kernel Using the guide an ran into this problem Here's the paste

https://pastebin.com/C38ss5tR

official cm 14.1 source GCC 4.9 latest toolchain.
[Android General] AlaskaLinuxUser:
Yes, over clocking will be in this series for sure! :D

Good log capture, that helps a lot. :good:

A couple more questions.

What phone, kernel are you building? What commands are you using to build, and have you modified the kernel at all? Is it the lineage kernel, or a custom one? And what os are you building on? You can never have too many details..... :laugh:
[Android General] srgrusso:
Just a final update. For some reason it kept rejecting or ignoring the Launcher3 app. I changed to NexusLauncherPrebuilt and it copied fine.

Thanks for all your help
[Android General] AlaskaLinuxUser:
You bet! I always thought it strange that several launchers use the same package name. Probably somehow related. But glad you got it in there somehow. :good:

How is the universal build working out? I've never done one, so some feedback would be great! :D
[Android General] srgrusso:
For me it is a lot easier. I don't have to deal with a device tree, vendor tree or kernel. There is a separate partition for the vendor files. All that gets built is the system image. If you use the scripts all the different patches for different devices get applied automatically. Also you get the options of adding gapps, gapps go, foss and su. Although I have been having trouble with gapps. I get the "this device is not certified by google" error. So I have been flashing gapps afterwards. I have been building for my gtaxlwifi [SM-T580] tablet. Oreo was never released for this tablet but [MENTION=2047373]Valera1978[/MENTION] has done so much development on this tablet that he made it possible to flash treble roms. Right know I'm running AOSP 9 Pie on it. The camera doesn't work but that has to do with the vendor files and not the GSI rom. I haven't tried any on my Honor 8 yet. The coolest part is that you can build a whole bunch of different custom Roms for your device and test them out.