Build Guide for CyanogenMod totally broken - Galaxy S 4 Q&A, Help & Troubleshooting

The build guide for CyanogenMod is totally broken and not fit for purpose.
I will explain.
This guide doesn't work: http://wiki.cyanogenmod.org/w/Build_for_jflte
I have downloaded and installed the latest Nightly for the S4 jflte
When running the ./extract-files.sh section of the guide it runs and extracts the propitiatory files and writes the make files for these.
HOWEVER, upon build the ROM will not boot.
So, I synced using https://github.com/TheMuppets/proprietary_vendor_samsung for the propriatory libs and files.
This builds properly, and boots, however, the Camera does not record video. Not a single line of code for the camera or hardware libraries has been touched. Not one line. Equally, the same code compiled for the i9300 works fine, the camera, works fine. In Official CM nightlies, the camera works fine.
Why does CyanogenMod's guide not work? Even for the i9300, I had to use TheMuppets propriatory libs rather than the broken CyanogenMod guide suggesting to using a nightly
Can anyone explain how to get the camera working properly?

Related

[Q] Camera Don't work on Firefox-OS but same boot.img wotk on Android?

On Nexus4 Firefox-OS Camera have a blackscreen.
So try to flash Firefox-OS boot.img but run android Camera work!
Why??
Same kernel running firefox os and android (Running On nexus4! not GT-I9300 it fake infomation to download free app )
Camera Work! on Android!
Well, if it is the same kernel running on both OS's, but a module isn't working in one of them, you might want to check the source of the OS. You may need to make adjustments to the camera relevant source code to allow it to interface properly with the kernel. Could also be that the kernel doesn't play well with FxOS. You could try flashing another kernel on the N4 and running FxOS on it after that to see if it makes any noticeable differences. Could be a few areas to check. Get with another developer or a kernel dev over in the N4 section and try to troubleshoot the issue to find where it is at.

[Q] searching for cm-10.1 source for Ideos X5

Hi
I have successfully upgraded my Ideos X5 U8800 to 2.3.5 official Gingerbread, rooted it, and then repartitioned it using Blepart recovery. Subsequently I have checked out cm11 source, including Blefish repositories/code for the U8800 (thanks for good work, by the way!), compiled/built and installed a ROM. This was my first build.
OK. Good so far. Only I am looking to build cm10.1 because my goal is to eventually get this handset running Ubuntu Touch. Therefore, the next step is to get it running on cm10.1.
My problem is that I cannot find the source I need. I have tried to set up a fresh source tree and check out cm10.1 source combined with Blefish's source by specifying branch cm10.1 for the latter, using the files I used in .repo/local_manifests to get the cm11 device source etc. from Blefish. However, something seems to be missing as the lunch command fails and compilation aborts. Also, I can see that development has been discontinued on this branch for the U8800.
Any suggestions?
The cm-10.1 branch is deprecated, and I am not planning to update it as cm-11.0 is better in any way.
Is the Ubuntu Touch source code only based on cm-10.1 code though? Maybe you could have success using the cm-11.0 code as it is right now? I am not familiar to how Ubuntu uses the lunch commands, it might be different than Android's default.
Blefish said:
The cm-10.1 branch is deprecated, and I am not planning to update it as cm-11.0 is better in any way.
Is the Ubuntu Touch source code only based on cm-10.1 code though? Maybe you could have success using the cm-11.0 code as it is right now? I am not familiar to how Ubuntu uses the lunch commands, it might be different than Android's default.
Click to expand...
Click to collapse
Thanks for the quick response!
The Ubuntu Touch guide specifically states cm-10.1, but I will sign up with their forums and check whether I can use cm-11.
The following passage from the Ubuntu Touch Porting Guide gives the impression I might be able to base my work on cm-11? Would you agree?
"For quick reference, these are the current components used from Android:
Linux Kernel (stock Android kernel provided by the vendor, with a few changes to support some extra features needed by Ubuntu, such as Apparmor)
OpenGL ES2.0 HAL and drivers
Media (stagefright) HAL, to re-use the hardware video decoders
RILD for modem support
As Ubuntu is running as the main host on top of an Android kernel and the communication between the Android services and HAL happens via Binder, Sockets and libhybris. "
I am hoping this could work, as it would be a tremendous help, now that I have a running ROM built on 20 May with your source tree for the device specific code etc. which works like a charm! :good:
Best regards,
aribk

[MIUI] Rom for MDPI devices

I want to build MIUI V6 for my GT-P3100 but only thing is that it's an MDPI device.
I still tried something and here's what I did -->
1) setup patchrom on my Ubuntu.
2) downloaded the miui v6 repo from github
3)used slimkat as base rom for my device ( thank you @Android-Andi)
4)got stuck after issuing the "make fullota" command. I got error regarding multiple configurations while installing framework-res.apk to put folder.
5) I changed the lcd density in build.prop to 240 to at least get a flash able zip although it might not work.
But I still got the same error.
I am following the guide available on github.com/MiCode/patchrom
It is written in broken English but still is quiet clear.
Then to check if I am doing something wrong, I built miui for nexus 5 using the same method and it worked flawlessly.
Could it be due to using slimkat as my base.?
I could use some help here as its my first time with miui and I have never built from source although I will surely build from source if I get enough time and a good guide?
You could try my CM build as base to cross check.

Regarding Android 10 on the HP Touchpad

Hello
For the past couple (weeks) I've been trying to compile Android 10 for tenderloin using the Android 9 sources but it's not going so well. First thing I ran into multiple sepolicy errors and I feel as if I fixed them in inappropriate ways but the errors went away. Other errors regarding camera and audio and such, that are regarding that tenderloin no longer uses the legacy audio format. Made me confused because I used the device sources form Evervolv and DIrty unicorns and if i'm correct they built it exactly the same way they uploaded it. After these errors were wrapped up, I got a error at zipping the rom that it could not zip due to failure of being able to read build.prop. This made me believe that the sources are not correctly formatted. If anyone can help me find a manifest, I can build for all you guys. Please keep tenderloin alive!
Now, I did something and I'm getting plenty of perl errors. Maybe I'm just very unlucky. I'm gonna attempt to reinstall on a fresh drive on my server.
If its anyone's concern, I was building lineage 17.1. I noticed for example, Lineage's "qcom-device" repo was shaped completely differently than Evervolvs qcom-device repo.
This led me to thought that Android 10 is going to be extremely difficult because of all the upstream dev changes that was pushed to Q. If any of you would like, I could probably push out March patches Pie rom because over there I'm mostly safe of complying with the source.
My manifest shape
DirtyUnicorn's device-tree
DirtyUnicorn's device-tree-common
DirtyUnicorn's htc-msm8960-kernel
Evervolv's vendor
And dirty unicorn's atheros wlan driver
I have been changing up the device tree so much, it almost looks ridiculous . From what I heard lots of properties on the device tree haven't been touched for years. Maybe tomorrow I can try Evervolv's Q rom. If you guys can help me build up my manifest, we can push out a fully working Q rom for tenderloin. And it would be just in time when Android 11 comes out. Thank you everyone!
I wish that I could offer any help, but I never tried to compile any Android ROM or for the HP_TP.
To my knowledge the only users that I know that could offer some insight on the process would be:
 @flintman
 @elginsk8r
Also the LuneOS project could offer some help:
https://pivotce.com/tag/luneos/
If Android Q(10) can not be ported to the HP_TP, then at least P(9) is a good ROM to keep updating that could provide many years of App support.
Theres no reason why exactly it cant,, because lots of roms I hear were built off the original TP sources (From 2011!). It was only around 2016 when guys around here had to change it up so much that they should've been so surprised that it worked. I can try and temporarily maintain P roms until the boys around here push out sources for Q!
djared704 said:
Theres no reason why exactly it cant,, because lots of roms I hear were built off the original TP sources (From 2011!). It was only around 2016 when guys around here had to change it up so much that they should've been so surprised that it worked. I can try and temporarily maintain P roms until the boys around here push out sources for Q!
Click to expand...
Click to collapse
To my limited knowledge is all about Hardware -->> Drivers -->> ( Kernel ).
The reason that Bluetooth and camera does not work on newer Android version is due to the old (proprietary drivers) and the Kernel. That takes more dedication and work than the ROM. The same rules applies to the desktop, older processors does not support certain features and the Operating System will not run. It is possible to disable the features in the kernel so that it does not check the hardware and make it run, but it will be unstable.
Everything could be possible with plenty of time, knowledge and dedication.
HP_TOUCHPAD said:
To my limited knowledge is all about Hardware -->> Drivers -->> ( Kernel ).
The reason that Bluetooth and camera does not work on newer Android version is due to the old (proprietary drivers) and the Kernel. That takes more dedication and work than the ROM. The same rules applies to the desktop, older processors does not support certain features and the Operating System will not run. It is possible to disable the features in the kernel so that it does not check the hardware and make it run, but it will be unstable.
Everything could be possible with plenty of time, knowledge and dedication.
Click to expand...
Click to collapse
When I look at the tenderloin source, the script to gather the camera driver is disabled. Camera isnt a huge deal though because its only 1.3 MP. However we use the MSM 8960 kernel from HTC and that is the one m7,, but the one m7 is a SD 600 device so it loses sense. I was gonna get some help with one of my kernel developer buddies to dev a kernel for android 10 for tenderloin. If you see the one m7 has Lineage 17.1 available and even though it doesnt have same chipset, if im correct both chipsets went off of the same assembly line process. Lineage 17.1 for the one m7 also packages it as a "uimage" which is what we use. I believe this was only a very small select of devices. Yeah about that ive been getting so many complaints during build about "mkimage" which should've been a prebuilt tool in the lineage source. Don't know why they removed it, or if our developers added it in by their selves, etc. Anyways I fixed that error by just "allowing" mkimage in one of the permission files in my environment. But yeah i went as far as the build packaging the ROM and it complaining it cannot read build.prop. Note the build.props are generated by the environment , not the source (even though the device data is gathered by the source, its not what im talking about). I even go to the directory it was complaining about and it was all there. One of my friends suggested a permission error. I changed permissions to 777 (rw to all users) and it would still output that error. By that point I trashed my build meaning I may of done something wrong early on. I will let someone else continue building 10 but I will continue building 9 with latest patches.
It will be extremely impressive if any kernel developer will update the HP Touchpad Kernel or tweak it for future release, well everything will stop once Android becomes 64 only.
I am sure you are very well aware, but I will suggest using this built:
https://forum.xda-developers.com/hp-touchpad/development/rom-evervolv-hp-touchpad-t3923512
I was able to do the following playing around recompiling the Kernel. I recompile almost all the ROM and incorporated the same kernel changes.
https://forum.xda-developers.com/hp-touchpad/general/hp-touchpad-optimize-android-swap-t3901773
The Ramdisk is also very easy to unpack and repack:
https://forum.xda-developers.com/hp-touchpad/general/hp-touchpad-novacom-repair-android-t3960435
There is no need to get the original Camera or Bluetooth working, only sound and WiFi.
HP_TOUCHPAD said:
It will be extremely impressive if any kernel developer will update the HP Touchpad Kernel or tweak it for future release, well everything will stop once Android becomes 64 only.
I am sure you are very well aware, but I will suggest using this built:
https://forum.xda-developers.com/hp-touchpad/development/rom-evervolv-hp-touchpad-t3923512
I was able to do the following playing around recompiling the Kernel. I recompile almost all the ROM and incorporated the same kernel changes.
https://forum.xda-developers.com/hp-touchpad/general/hp-touchpad-optimize-android-swap-t3901773
The Ramdisk is also very easy to unpack and repack:
https://forum.xda-developers.com/hp-touchpad/general/hp-touchpad-novacom-repair-android-t3960435
There is no need to get the original Camera or Bluetooth working, only sound and WiFi.
Click to expand...
Click to collapse
I think I probably stated somewhere, but Evervolvs "device" tree would just spit out hundreds of errors, and I fixed this by switching to Dirty Unicorns device tree. I also tried flintman's device tree and it didn't spit out many errors. Thanks for this though.
djared704 said:
I think I probably stated somewhere, but Evervolvs "device" tree would just spit out hundreds of errors, and I fixed this by switching to Dirty Unicorns device tree. I also tried flintman's device tree and it didn't spit out many errors. Thanks for this though.
Click to expand...
Click to collapse
I have only recompile the Kernel and all of them work, but the correct branch must be use. I can not say about building a ROM, never done it.
But Evervovs Pie by elginsk8r works very well and stable as it uses the same kernel, but the framework is different. I guess elginsk8r will be the only that can guide you on the right direction or flintman.
Have fun learning, it takes a lot of TIME!

[SOLVED!] Bluetooth doesn't work after compiling a kernel based on LOS 18.1 sources.

I'm kinda new here, so please excuse me if this is not the best place to ask and it should instead be posted in another section.
First, a bit of context: I recently bought a refurbished H910 to practice android development since it was fairly cheap, and after testing its features and unlocking the bootloader to install custom roms, i opted to start compiling a kernel of my own with some changes to begin involving myself with the development side of things. For now, i am using the Lineage OS 18.1 kernel sources on github as a base for the kernel, then after making sure that the kernel compiled, i flashed it into the phone and basically everything works with the only exception being the bluetooth, and maybe the IR Blaster, but that one is working just like the stock kernels on different Android 11 roms.
Now getting to the issue itself in more details... it boils down to the phone's bluetooth refusing to turn on while running that custom kernel of mine on any Android 11 ROM, be it Lighthouse, Superior OS Xcalibur or Lineage 18.1, the bluetooth tile gets stuck on the "Turning on..." icon animation for a while and then returns to the disabled state. Reverting to the stock kernels or even using other custom kernels like Lyb's or Gamma make the Bluetooth work again without needing a wipe, which tells me that the problem is definitely somewhere in my kernel. I could of course test it on some Android 10 ROMs, but the outcome will most likely be the same.
I even took some logcats via ADB Shell but they are kind of broad and mostly explain that the service had some problems with "com.android.bluetooth service has died: psvc PER", followed by a "scheduled restart of crashed service com.android.bluetooth...". Both of which never happen on those ROM's stock kernels, where the bluetooth works as expected. I looked around on Lyb/Gamma kernel sources on github, and there aren't any major differences to the defconfigs for example with the bluetooth driver configuration also being just about the same.
I'm not sure if this will be of any help, but as for the toolchains and compilers, i am using clang 11.0.2 383902b1 as the main compiler, gcc 4.9 as the ARM32 cross-compiler, and gcc from 4.9 up to 10.3 as the AARCH64 cross-compiler, all running on Manjaro. I also changed that combination dozens of times, but to no avail.
So am i missing something during the compilation process? With all those things i already checked, i keep getting a feeling that something really simple is going over my head. Also, i can post the link to my github repository here if needed, there's a branch made specifically to check the BT since it has only the changes made to assure that the kernel compiles.
Edit: The problem was solved!!! It actually comes down to using the exact toolchains provided by the lineage OS source tree for the device (that might be optional, but it's how i managed to get it working) and checking if everything has been installed correctly. It seems some files failed to download the last time i did a 'repo sync' on the source and that was what might have caused this.

Categories

Resources