CM 12-1 compile htc m9 himaul image - One (M9) Q&A, Help & Troubleshooting

Hi all,
I have downloaded the sources for cm 12.1, I have already build many ROMs for htc m7, m8 and some others. Cyanogen have not released the source for htc m9 yet, however you and find a github repo with all the neccesary parts for building you himaul ROM over a CM_12.1 source. It is called Hima-Dev
I have cloned all necessary parts for building it and I have placed them into the right place. Bellow I attach a listh of what I downloaded.
The kernel
Then the common vendor propietary folder
And finally the device specific folder along with its common folder for device.
Before building I run the ./extract-files script in order to get all propietary libraries, apps and files. Then I start a building for "himaul" and everythhing works very ok. (breakfast himaul && brunch himaul)
The problem comes after install the new ROM. It raises many exceptions during boot screen. Bellow I attach some of the log messages I get.
Code:
java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "__htclog_init_mask" referenced by "libtime_genoff.so"...
java.lang.NullPointerException: Attempt to invoke interface method 'void android.app.IActivityManager.handleApplicationCrash(android.os.IBinder, android.app.ApplicationErrorReport$CrashInfo)' on a null object reference
My question is. Should I wait for cyanogen in order to get a stable source or is there any workout for solving this? :good:

Related

[Q] RIL Development sgh-t999

Hi everyone,
recently I have built and flashed on my sgh-t999 (galaxy S3 US tmobile version) CM11 Nightly. For my pro0ject however I need to modify two libraries of the Radio Interface Layer (RIL), libril.so and libreference-ril.so. I tried to modify the ones in the forlder /hardware/ril/ and build everything again with no results. Any change that I made to those files (such as ril.cpp in the folder libril) would not affect the functionality of the phone.
Finally yesterday I understood that when I build those libraries for the target cm-d2tmo-eng, those files that I have modified are not considered at all! When the libraries are built indeed, the system automatically takes the libril.so and libreference.so present in the vendor folder!
The problem is that those libraries in the vendor folder and already compiled and I cannot modify them. The question is:
Is there any way that I compile those libraries from the source code that I have modified?
Thanks,
brok85
Given that there is a unified D2LTE Build on CM, can you elaborate on what changes you wish to make to these libraries ?
To answer your question, You can do one of two things.
Grab the CM Source Code from the Device Tree of D2LTE. Make your relevant changes and check in the changes if they boot ok on your device. That way those changes will be included in future builds of CM and other Roms that use it.
If you do not wish to do so, then you will have to compile those libraries using C++ Compiler on a *NIX box and replace them in the Vendor folder.
Perseus71 said:
Given that there is a unified D2LTE Build on CM, can you elaborate on what changes you wish to make to these libraries ?
Click to expand...
Click to collapse
Well, as fisrt I just wanted to insert some log to be able to follow the code execution from the logcat or do something similar.
Perseus71 said:
To answer your question, You can do one of two things.
Grab the CM Source Code from the Device Tree of D2LTE. Make your relevant changes and check in the changes if they boot ok on your device. That way those changes will be included in future builds of CM and other Roms that use it.
Click to expand...
Click to collapse
Sorry but I am kind of new on this things. I have already downloaded the source code from the device tree and made my modifications in the files ril.cpp contained in [path-to-android-source]/hardware/ril/libril/ril.cpp. What I did was commenting the whole code within the function RIL_onUnsolicitedResponse() and listenCallback() such that in theory, the phone is not able to display incoming calls for example. However after flashing the re-built android I am still able to receve calls. How can I "check in the changes if they boot ok on my device"?
Perseus71 said:
If you do not wish to do so, then you will have to compile those libraries using C++ Compiler on a *NIX box and replace them in the Vendor folder.
Click to expand...
Click to collapse
I tried to remove the libril.so in the vendor folder and compile again using
# . build/envsetup.sh
# lunch (and select d2tmo)
# mmm [path-to-android-source]/hardware/ril/libril".
The problem is that when I indicate the target after lunch, the compiler looks for the vendor libraries and stop the build. What I am doing wrong?
Sounds like Compiler Dependacy path is set different from the code base. I will look further before commenting.
For when your changes are for the benefit of the community of users, you check in the changed code back to the Device Tree with detailed comments within the code and while checking in.
Perseus71 said:
Given that there is a unified D2LTE Build on CM, can you elaborate on what changes you wish to make to these libraries ?
To answer your question, You can do one of two things.
Grab the CM Source Code from the Device Tree of D2LTE. Make your relevant changes and check in the changes if they boot ok on your device. That way those changes will be included in future builds of CM and other Roms that use it.
If you do not wish to do so, then you will have to compile those libraries using C++ Compiler on a *NIX box and replace them in the Vendor folder.
Click to expand...
Click to collapse
Perseus71 said:
Sounds like Compiler Dependacy path is set different from the code base. I will look further before commenting.
For when your changes are for the benefit of the community of users, you check in the changed code back to the Device Tree with detailed comments within the code and while checking in.
Click to expand...
Click to collapse
Actually this is what I get after deleting
libril.so in vendor/samsung/d2tmo/proprietary/lib/
and after executing mmm /hardware/ril/libril :
No private recovery resources for TARGET_DEVICE d2tmo
make: *** No rule to make target `vendor/samsung/d2tmo/proprietary/lib/libril.so', needed by `/home/brok85/Documents/android/system/out/target/product/d2tmo/system/lib/libril.so'. Stop.
make: Leaving directory `/home/brok85/Documents/android/system'
If u want to build from source, delete the line that copies in vendor-blobs.mk
If u want to copy the blob instead of building it from source, keep the line
It'll be better if u provide us the device and vendor trees links
blackbeard said:
If u want to build from source, delete the line that copies in vendor-blobs.mk
If u want to copy the blob instead of building it from source, keep the line
It'll be better if u provide us the device and vendor trees links
Click to expand...
Click to collapse
I am not sure to understand what should I provide Sorry, as I said I'm kind of new here...
Also, I can not find vendor-blobs.mk...Where it should be?
brok85 said:
I am not sure to understand what should I provide Sorry, as I said I'm kind of new here...
Also, I can not find vendor-blobs.mk...Where it should be?
Click to expand...
Click to collapse
You said you built a cm11 for ur device. So for that you needed the device and the vendor trees. Give the link of those, if they are on the git
And vendor-blobs.mk would be present in the vendor folder under your device folder
blackbeard said:
You said you built a cm11 for ur device. So for that you needed the device and the vendor trees. Give the link of those, if they are on the git
Click to expand...
Click to collapse
Well I have followed the guide in the following page
http://wiki.cyanogenmod.org/w/Build_for_d2tmo
The link from where I have obtained the repository is
$ repo init -u git://github.com/CyanogenMod/android.git -b cm-11.0
and then
$ breakfast d2tmo
blackbeard said:
And vendor-blobs.mk would be present in the vendor folder under your device folder
Click to expand...
Click to collapse
Actually now I think I was able to compile the library following your instructions. Unfortunatly, when I have built and flashed everything in the galaxy S3, I was not able to use the network. Probably some compatibility issue?
When I compiled libril.so, I have obtained it from the folder /hardware/ril/libril which should contain google source code, maybe not compatibale with my device...is it right?
thanks a lot for the help guys
brok85 said:
Actually now I think I was able to compile the library following your instructions. Unfortunatly, when I have built and flashed everything in the galaxy S3, I was not able to use the network. Probably some compatibility issue?
When I compiled libril.so, I have obtained it from the folder /hardware/ril/libril which should contain google source code, maybe not compatibale with my device...is it right?
Click to expand...
Click to collapse
You know, silly question. But just so we can rule out. Did you at any point compiled the CM11 code as is and flashed to the phone ? How did Network behave ? Was everything ok ?
Galaxy S3 is a very open platform with standard hardware and chipsets. So the Default google code should work out of box with it. If you have network issues, then just for kicks you can flash a custom Kernel on top of your compiled CM 11. See how that goes.
Perseus71 said:
You know, silly question. But just so we can rule out. Did you at any point compiled the CM11 code as is and flashed to the phone ? How did Network behave ? Was everything ok ?
Click to expand...
Click to collapse
No silly question at all
I have compiled CM11 as it is and worked perfectly. I could use the network.
Perseus71 said:
Galaxy S3 is a very open platform with standard hardware and chipsets. So the Default google code should work out of box with it. If you have network issues, then just for kicks you can flash a custom Kernel on top of your compiled CM 11. See how that goes.
Click to expand...
Click to collapse
The procedure I have followed is the following one:
1) Delete the llibril.so and libreference-ril.so from the vendor library. These are the pre-compiled vendor libraries that I need to modify.
2) commented the lines from the vendor-blobs.mk that were including those two precompiled libraries.
3) go to android/system/ and run "mmm /hardware/ril/libril" and "mmm /hardware/ril/reference-ril" to obtain the modified libril.so and libreference-ril.so respectively.
4) copied the new libraries just obtained in the vendor folder where the pre-compiled libraries were
5) re-include the lines commented in point 2).
6) run brunch d2tmo
7) flash the .zip obtained
Any mistake?
Perseus71 said:
You know, silly question. But just so we can rule out. Did you at any point compiled the CM11 code as is and flashed to the phone ? How did Network behave ? Was everything ok ?
Click to expand...
Click to collapse
No silly question at all. Yes I have built everything out of the box and worked perfectly. I could use the network.
Perseus71 said:
Galaxy S3 is a very open platform with standard hardware and chipsets. So the Default google code should work out of box with it. If you have network issues, then just for kicks you can flash a custom Kernel on top of your compiled CM 11. See how that goes.
Click to expand...
Click to collapse
I followed the following procedure to include my modified libraries:
1) Eliminate precompiled vendor libraries: libril.so and libreference-ril.so from the vendor folder
2) comment lines in the vendor-blobs.mk that included those two precompiled libraries
3) from /android/system/ executed command "mmm /hardware/ril/librail" and "mmm /hardware/ril/reference-ril" to obtain the modified libril.so and libreference-ril.so
4) copied the new libraries in the vendor folder in the same places were the precompiled libraries were positioned
5) re-include the two lines that were commented in point 2)
6) build everything again with brunch d2tmo
7) flash the .zip obtained
Any mistake?
Unless I am having a brain fart that process seems about right. I wonder if your RIL changes are related to the network
What kind of issues do you see ?
Perseus71 said:
Unless I am having a brain fart that process seems about right. I wonder if your RIL changes are related to the network
What kind of issues do you see ?
Click to expand...
Click to collapse
It cannot even find the network operators. It says that it is impossible to connect and to try later...
mine is the Tmobile version of S3. May this influence?
That would depend on the changes you made. But otherwise not really. The underlying Device tree is unified for all US S3 devices.

[Q] [DEV][AOSP] Android 4.4.3.43.43.43 for Ancora

Hi mates
I am trying to port the AOSP 4.4.3.43.43.43 L-Preview branch for our phone it's generated 5.2gb of out/target/product/ancora folder but compilation still stuck on the following image
Code:
arget Symbolic: libstagefright_amrnb_common (out/target/product/ancora/symbols/system/lib/libstagefright_amrnb_common.so)
make: *** No rule to make target `out/target/product/ancora/obj/KERNEL_OBJ/usr', needed by `out/target/product/ancora/obj/SHARED_LIBRARIES/audio.primary.msm7x30_intermediates/AudioHardware.o'. Stop.
Should I remove audio configuration from ancora.mk?
what kind of commit should apply to fix that error, any help will be thanked .
Maybe will be ported a pure AOSP
OK the most of the source are compiled the only think i need to fix is boot.img creation now i replace the AOSP recovery with cm one because the aosp is based only for the devices that support fastboot where our phone doesn't support it, if any updates or got it booted I will notify .

How do I provide libqdMetaData_intermediates/export_includes?

When trying to build AOSP Nougat for the Z1C according to Sony's HowTo (which is for MarshMallow) the build runs on the following error:
Code:
Running kati to generate build-aosp_d5503.ninja...
No need to regenerate ninja file
Starting build with ninja
ninja: Entering directory `.'
ninja: error: 'out/target/product/amami/obj/SHARED_LIBRARIES/libqdMetaData_intermediates/export_includes', needed by 'out/target/product/amami/obj/SHARED_LIBRARIES/camera.msm8974_intermediates/import_includes', missing and no known rule to make it
make: *** [build/core/ninja.mk:149: ninja_wrapper] Error 1
#### make failed to build some targets (5 seconds) ####
How do I fix this? I don't know how the build chain works ...looks like there can always be an export_includes folder and an import_includes folder. I guess these are folders for C header files. Sony's manifest xml removes the default camera and adds a different camera project. I already tried disabling both xml tags, re-run lunch and started compiling again - but with the same result.
Maybe I should start with this question: How can I provide a required dependency in the build chain in general?
Meanwhile I found Sony's HowTo for Nougat and now all dependencies are fulfilled. Anyway I would like to understand the build process, so answers to my question are still welcome.
thorstenhirsch said:
Meanwhile I found Sony's HowTo for Nougat and now all dependencies are fulfilled. Anyway I would like to understand the build process, so answers to my question are still welcome.
Click to expand...
Click to collapse
I don't think you're gonna get anywhere with this because there are no Nougat binaries available ATM.

[Devs Needed] Rom compiling issues

I don't know what's the issue with my setup or kernel tree (Alberto97's git) that I'm getting these errors all the time when I try to compile any rom
1) rmnetctl library conflict. There's always this error in all roms and states that "shared libraries is already defined" in rmnetctl folder in device tree hence stopping the build at the begenning. I got past the issue by deleting the rmnetctl folder in device tree but is it the right way to do it?
2) Sepolicy error. Even after I delete above folder, the build stopped after it reaches about 34%, I don't know what it's called but I'm getting this error every time I try to compile any rom. This time while building aosp extended https://hastebin.com/yomepicili.sql
I'm a noob so pardon any lack of knowledge. I am trying to learn to compile here. Also, I'm using oreo-mr1 branch device tree and kernel and oreo-mr1-addison branch for vendor.

Error MK8080B Plus own device tree

After a lot of googling around and like 50 open chrome tabs I tried making own device tree so I used old cm makedevice.sh script and updated it with help of current lineage bacon device tree and some brcm_rpi3 device tree, here you go *"*"https://github.com/honzapatCZ/android_device_amlogic_mk8080bplus"*"* vendor is not currently setup so Iam building just recovery, but I get an error:
HTML:
23:00:34 Could not create module-finder: finder encountered 1 errors: [/mnt/d/Dev/ANDROID/lineage/android/lineage/external/swiftshader/tests/unittests: lstat /mnt/d/Dev/ANDROID/lineage/android/lineage/external/swiftshader/tests/unittests: no such file or directory]
Any idea what it is? How to fix it? Iam gonna do more research about rpi3 device tree as its the closetst thing I know about features.
Thanks

Categories

Resources