Related
Hi,
In the past I've built CM for various devices/versions. Moving to omni, I'd like to build for my jfltexx, but it fails during some of the static library builds:
I thought it might be jfltexx specific, but mako dies in a similar way:
Code:
host C: libcorkscrew <= system/core/libcorkscrew/arch-x86/ptrace-x86.c
host SharedLib: libgccdemangle (/home/darrens/android/omni/out/host/linux-x86/obj/lib/libgccdemangle.so)
/home/darrens/android/omni/out/host/linux-x86/obj/SHARED_LIBRARIES/libgccdemangle_intermediates/cp-demangle.o: file not recognized: File truncated
collect2: ld returned 1 exit status
make: *** [/home/darrens/android/omni/out/host/linux-x86/obj/lib/libgccdemangle.so] Error 1
make: *** Waiting for unfinished jobs....
I have a clean tree for CM11 - it is looking like mako will succeed (the .o files that are empty above are present in the CM build) CM11 jfltexx fails, but in a different way to omni.
EDIT: Just produced cm-11-20131212-UNOFFICIAL-mako.zip, but still no luck.
BTW - love the approach omni is taking. As a long time user of Fedora, I can see parallels in the engagement model. The community will be able to engage in a more stuctured way (discussing bugs randomly on XDA is a poor way to manage issues in unreleased software), and I suspect it will be easier for people to stand up and submit fixes, or even report bugs. Good job.
Ah - might be my bad. Had my machine freeze at some stage after/during repo sync - might have corrupted something that wasn't detected by re-sync. removed the source for this lib, and re synced - it's built the object files now, but failed on a few others. Might blow away the whole lot and start clean (is there a way to check integrity of files in the repo?)
dazbys said:
Ah - might be my bad. Had my machine freeze at some stage after/during repo sync - might have corrupted something that wasn't detected by re-sync. removed the source for this lib, and re synced - it's built the object files now, but failed on a few others. Might blow away the whole lot and start clean (is there a way to check integrity of files in the repo?)
Click to expand...
Click to collapse
Nuke your working folder and do a sync from scratch using this method: http://forum.xda-developers.com/showpost.php?p=47625075&postcount=666
It'll sync in no time at all because you already have CM11.0 sauce™ code.
Success
chasmodo said:
Nuke your working folder and do a sync from scratch using this method: http://forum.xda-developers.com/showpost.php?p=47625075&postcount=666
It'll sync in no time at all because you already have CM11.0 sauce™ code.
Click to expand...
Click to collapse
Yep - some corrupted stuff in my repo - all synced and build OK.
Do you know if I need to extract the proprietary files for the final product to run properly? I ran extract-files.sh, and it failed to find some (using my existing omni 4.4.2 device as the source).
dazbys said:
Yep - some corrupted stuff in my repo - all synced and build OK.
Do you know if I need to extract the proprietary files for the final product to run properly? I ran extract-files.sh, and it failed to find some (using my existing omni 4.4.2 device as the source).
Click to expand...
Click to collapse
I don't know for sure for your device, but I compile builds for n7000 and n7100 using DonCoyote/Samsung blobs, not extracted stuff.
chasmodo said:
I don't know for sure for your device, but I compile builds for n7000 and n7100 using DonCoyote/Samsung blobs, not extracted stuff.
Click to expand...
Click to collapse
OK. I've seen a ref to that, and theMuppets. I guess without the blobs, big chunks of the device won't work. I'll just have to try it out I guess (then perhaps I can assist with the build_jfltexx page on the wiki). I'll add that to my config, as per the i9300 instructions .
dazbys said:
OK. I've seen a ref to that, and theMuppets. I guess without the blobs, big chunks of the device won't work. I'll just have to try it out I guess (then perhaps I can assist with the build_jfltexx page on the wiki). I'll add that to my config, as per the i9300 instructions .
Click to expand...
Click to collapse
I'm trying to build for a jfltexx, but I'm stuck here:
Code:
make: *** Nessuna regola per generare l'obiettivo "/home/francesco/android/omni/out/target/product/jfltexx/obj/lib/libtime_genoff.so", necessario per "/home/francesco/android/omni/out/target/product/jfltexx/obj/SHARED_LIBRARIES/libandroid_runtime_intermediates/LINKED/libandroid_runtime.so". Arresto.
make: *** Attesa per i processi non terminati....
external/sqlite/dist/sqlite3.c: In function 'pcache1Fetch':
external/sqlite/dist/sqlite3.c:37669:25: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]
external/sqlite/dist/sqlite3.c:37671:25: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]
external/sqlite/dist/sqlite3.c: In function 'fts3SnippetFunc':
external/sqlite/dist/sqlite3.c:129896:11: warning: 'iS' may be used uninitialized in this function [-Wmaybe-uninitialized]
external/sqlite/dist/sqlite3.c:129888:13: note: 'iS' was declared here
Can you please tell me what steps are after Setting Up A Compile Environment?
Thanks
TheMorpheus said:
I'm trying to build for a jfltexx, but I'm stuck here:
Code:
make: *** Nessuna regola per generare l'obiettivo "/home/francesco/android/omni/out/target/product/jfltexx/obj/lib/libtime_genoff.so", necessario per "/home/francesco/android/omni/out/target/product/jfltexx/obj/SHARED_LIBRARIES/libandroid_runtime_intermediates/LINKED/libandroid_runtime.so". Arresto.
make: *** Attesa per i processi non terminati....
external/sqlite/dist/sqlite3.c: In function 'pcache1Fetch':
external/sqlite/dist/sqlite3.c:37669:25: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]
external/sqlite/dist/sqlite3.c:37671:25: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]
external/sqlite/dist/sqlite3.c: In function 'fts3SnippetFunc':
external/sqlite/dist/sqlite3.c:129896:11: warning: 'iS' may be used uninitialized in this function [-Wmaybe-uninitialized]
external/sqlite/dist/sqlite3.c:129888:13: note: 'iS' was declared here
Can you please tell me what steps are after Setting Up A Compile Environment?
Thanks
Click to expand...
Click to collapse
Flash latest nightly and do ./device/samsung/jfltexx/extract-files.sh
I have Omni booting and running on a E210K (It is a SGS3 Korean variant, only changes are LTE, 2GB and DMB antenna), but some major bugs need fixing. There not much if any device trees for these out there so I have just been modifying the i9300 and it works.
These are probably the major two issues I have for now:
1. without manually adding ro.zygote.disable_gl_preload=1 to the build prop, it won't boot. I noticed this line wasn't in the i9300 builds either, but it's definitely referenced in my builds:
/android/omni/device/samsung/smdk4412-common/common.mk
# Set default USB interface
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
persist.sys.usb.config=mtp \
ro.zygote.disable_gl_preload=true
Click to expand...
Click to collapse
2. Can't adjust the vibration in advanced settings, when I do I get the logcat message below, there is no (very light) feedback because it seems the value is set very low.
If I manually edit the values (by putting it up to 10+) I can get feedback, so it is working.
Code:
I/ActivityManager( 2466): Displayed org.omnirom.device/.DeviceSettings: +428ms
W/DeviceSettings_Utils_Read( 5375): file /sys/vibrator/pwm_val: 2
W/DeviceSettings_Utils( 5375): file /sys/vibrator/pwm_val not found: java.io.FileNotFoundException: /sys/vibrator/pwm_val: open failed: EACCES (Permission denied)
W/DeviceSettings_Haptic( 5375): key: vibrator_tuning
but I have no idea where/how to proceed.
My device tree is up over at:
https://github.com/kaijura/android_device_samsung_e210k
I am using the same omni sources for smdk4412-common and kernel.
Thanks in advance
kaijura said:
I have Omni booting and running on a E210K (It is a SGS3 Korean variant, only changes are LTE, 2GB and DMB antenna), but some major bugs need fixing. There not much if any device trees for these out there so I have just been modifying the i9300 and it works.
These are probably the major two issues I have for now:
1. without manually adding ro.zygote.disable_gl_preload=1 to the build prop, it won't boot. I noticed this line wasn't in the i9300 builds either, but it's definitely referenced in my builds:
2. Can't adjust the vibration in advanced settings, when I do I get the logcat message below, there is no (very light) feedback because it seems the value is set very low.
If I manually edit the values (by putting it up to 10+) I can get feedback, so it is working.
Code:
I/ActivityManager( 2466): Displayed org.omnirom.device/.DeviceSettings: +428ms
W/DeviceSettings_Utils_Read( 5375): file /sys/vibrator/pwm_val: 2
W/DeviceSettings_Utils( 5375): file /sys/vibrator/pwm_val not found: java.io.FileNotFoundException: /sys/vibrator/pwm_val: open failed: EACCES (Permission denied)
W/DeviceSettings_Haptic( 5375): key: vibrator_tuning
but I have no idea where/how to proceed.
My device tree is up over at:
https://github.com/kaijura/android_device_samsung_e210k
I am using the same omni sources for smdk4412-common and kernel.
Thanks in advance
Click to expand...
Click to collapse
LTE screams "qcom modem" to me - perhaps look at the i9305 tree?
Figured it out, for anyone searching for this problem - the issue has to do with the ramdisk portion of a (custom) kernel as it wasn't matching up omni's init setups.
Entropy512 said:
LTE screams "qcom modem" to me - perhaps look at the i9305 tree?
Click to expand...
Click to collapse
Tried a i9305 build it was a little worse off (no mobile connection), haha. I'm thinking of submitting for an official build after I figure out the build for a working stock omni kernel.
Since this device gets few attention (maybe less than 50 in the sgs3 forum) is it possible that you guys could set the jenkins buildbot to build like every week or other week?
kaijura said:
Figured it out, for anyone searching for this problem - the issue has to do with the ramdisk portion of a (custom) kernel as it wasn't matching up omni's init setups.
Tried a i9305 build it was a little worse off (no mobile connection), haha. I'm thinking of submitting for an official build after I figure out the build for a working stock omni kernel.
Since this device gets few attention (maybe less than 50 in the sgs3 forum) is it possible that you guys could set the jenkins buildbot to build like every week or other week?
Click to expand...
Click to collapse
Hmm, that might be a possibility...
kaijura said:
I have Omni booting and running on a E210K (It is a SGS3 Korean variant, only changes are LTE, 2GB and DMB antenna), but some major bugs need fixing. There not much if any device trees for these out there so I have just been modifying the i9300 and it works.
These are probably the major two issues I have for now:
1. without manually adding ro.zygote.disable_gl_preload=1 to the build prop, it won't boot. I noticed this line wasn't in the i9300 builds either, but it's definitely referenced in my builds:
2. Can't adjust the vibration in advanced settings, when I do I get the logcat message below, there is no (very light) feedback because it seems the value is set very low.
If I manually edit the values (by putting it up to 10+) I can get feedback, so it is working.
Code:
I/ActivityManager( 2466): Displayed org.omnirom.device/.DeviceSettings: +428ms
W/DeviceSettings_Utils_Read( 5375): file /sys/vibrator/pwm_val: 2
W/DeviceSettings_Utils( 5375): file /sys/vibrator/pwm_val not found: java.io.FileNotFoundException: /sys/vibrator/pwm_val: open failed: EACCES (Permission denied)
W/DeviceSettings_Haptic( 5375): key: vibrator_tuning
but I have no idea where/how to proceed.
My device tree is up over at:
https://github.com/kaijura/android_device_samsung_e210k
I am using the same omni sources for smdk4412-common and kernel.
Thanks in advance
Click to expand...
Click to collapse
This says u r building a rom.Is it working fine?
thanks
Hello I am trying to port the beloved OmniRom to my device which is a KLTE (Samsung Galaxy S5) I have successfully built the ROM from source using kernel and device configs from CM and of course some fixes and cherry picking. The issue I have now is that the ROM will not boot.
I stays at my carrier logo (Samsung) so it does not even let me cat-log. I tried to install the ROM and then restored a backup of Cyanogenmods system directory. It boots to android but all apps forceclose. I did this to see if it was an issue with the boot image and since it can boot to a different system partition I don't believe its a boot.img issue or kernel issue for that matter. Or is it?
Any help getting this to boot would be appreciated. I can provide build logs and my device repo if needed.
gigoo25 said:
Hello I am trying to port the beloved OmniRom to my device which is a KLTE (Samsung Galaxy S5) I have successfully built the ROM from source using kernel and device configs from CM and of course some fixes and cherry picking. The issue I have now is that the ROM will not boot.
I stays at my carrier logo (Samsung) so it does not even let me cat-log. I tried to install the ROM and then restored a backup of Cyanogenmods system directory. It boots to android but all apps forceclose. I did this to see if it was an issue with the boot image and since it can boot to a different system partition I don't believe its a boot.img issue or kernel issue for that matter. Or is it?
Any help getting this to boot would be appreciated. I can provide build logs and my device repo if needed.
Click to expand...
Click to collapse
MSM8974 is our first CAF chipset we're working on supporting.
I'd suggest looking at the Oppo find7/msm8974-common repos as nearly all initial CAF 8974 work is being done on the Find7.
you need android-5.1-caf branches for frameworks/av and frameworks/native for a CAF device until I finish the merge effort
Entropy512 said:
MSM8974 is our first CAF chipset we're working on supporting.
I'd suggest looking at the Oppo find7/msm8974-common repos as nearly all initial CAF 8974 work is being done on the Find7.
you need android-5.1-caf branches for frameworks/av and frameworks/native for a CAF device until I finish the merge effort
Click to expand...
Click to collapse
Thank you! That explains a lot. Maybe you can help me again? I keep coming across building with legacy opposed to CAF and to change it in the configs... What configs are they talking about?
Sent from my SM-G900T using XDA Free mobile app
gigoo25 said:
Thank you! That explains a lot. Maybe you can help me again? I keep coming across building with legacy opposed to CAF and to change it in the configs... What configs are they talking about?
Sent from my SM-G900T using XDA Free mobile app
Click to expand...
Click to collapse
You mean AOSP HALs? It's pretty rare for a CAF device to work with vanilla AOSP HALs.
It's the various QCOM_blah_VARIANT flags - 8974s are caf-bfam
Entropy512 said:
You mean AOSP HALs? It's pretty rare for a CAF device to work with vanilla AOSP HALs.
It's the various QCOM_blah_VARIANT flags - 8974s are caf-bfam
Click to expand...
Click to collapse
Updated my repo to 5.1 source but still getting errors. Here is the device configs that I am using. I am getting the same errors throughout.
First error was
Code:
frameworks/base/core/jni/android_view_Surface.cpp:206:14: error: 'class android::Surface' has no member named 'setDirtyRect'
surface->setDirtyRect(&rect);
Which I solved by cherry-picking THIS
Next I get an error that msmcal-hwdep.h is not found not sure how to fix this yet...
I recreated my devices config from scratch and uploaded it to git... Maybe you can take a look when you have some free time? It would mean alot! https://github.com/Gigoo25/android_device_samsung_klte
gigoo25 said:
Updated my repo to 5.1 source but still getting errors. Here is the device configs that I am using. I am getting the same errors throughout.
First error was
Code:
frameworks/base/core/jni/android_view_Surface.cpp:206:14: error: 'class android::Surface' has no member named 'setDirtyRect'
surface->setDirtyRect(&rect);
Which I solved by cherry-picking THIS
Next I get an error that msmcal-hwdep.h is not found not sure how to fix this yet...
I recreated my devices config from scratch and uploaded it to git... Maybe you can take a look when you have some free time? It would mean alot! https://github.com/Gigoo25/android_device_samsung_klte
Click to expand...
Click to collapse
msmcal_hwdep - look at the stiff in your kernel source under include/ - all of that header-y stuff in some of the Kconfigs
You shouldn't be cherrypicking that, I'm not sure why Max even put that up. Until I finish the CAF av/native merge, anyone declaring QCOM_HARDWARE should be using the android-5.1-caf branches of av and native
Entropy512 said:
msmcal_hwdep - look at the stiff in your kernel source under include/ - all of that header-y stuff in some of the Kconfigs
You shouldn't be cherrypicking that, I'm not sure why Max even put that up. Until I finish the CAF av/native merge, anyone declaring QCOM_HARDWARE should be using the android-5.1-caf branches of av and native
Click to expand...
Click to collapse
Awesome! alright will look into that
Sent from my SM-G900T using XDA Free mobile app
Entropy512 said:
msmcal_hwdep - look at the stiff in your kernel source under include/ - all of that header-y stuff in some of the Kconfigs
You shouldn't be cherrypicking that, I'm not sure why Max even put that up. Until I finish the CAF av/native merge, anyone declaring QCOM_HARDWARE should be using the android-5.1-caf branches of av and native
Click to expand...
Click to collapse
Having issues compiling the camera I get the error
Code:
device/samsung/klte/camera/CameraWrapper.cpp: In function 'char* camera_fixup_setparams(int, const char*)':
device/samsung/klte/camera/CameraWrapper.cpp:161:20: error: 'KEY_DIS' is not a member of 'android::CameraParameters'
params.set(android::CameraParameters::KEY_DIS, android::CameraParameters::DIS_DISABLE);
^
device/samsung/klte/camera/CameraWrapper.cpp:161:56: error: 'DIS_DISABLE' is not a member of 'android::CameraParameters'
params.set(android::CameraParameters::KEY_DIS, android::CameraParameters::DIS_DISABLE);
^
device/samsung/klte/camera/CameraWrapper.cpp:162:20: error: 'KEY_ZSL' is not a member of 'android::CameraParameters'
params.set(android::CameraParameters::KEY_ZSL, android::CameraParameters::ZSL_OFF);
^
device/samsung/klte/camera/CameraWrapper.cpp:162:56: error: 'ZSL_OFF' is not a member of 'android::CameraParameters'
params.set(android::CameraParameters::KEY_ZSL, android::CameraParameters::ZSL_OFF);
^
device/samsung/klte/camera/CameraWrapper.cpp:164:20: error: 'KEY_ZSL' is not a member of 'android::CameraParameters'
params.set(android::CameraParameters::KEY_ZSL, android::CameraParameters::ZSL_ON);
^
device/samsung/klte/camera/CameraWrapper.cpp:164:56: error: 'ZSL_ON' is not a member of 'android::CameraParameters'
params.set(android::CameraParameters::KEY_ZSL, android::CameraParameters::ZSL_ON);
^
make: *** [/home/rob/android/omni51/out/target/product/klte/obj/SHARED_LIBRARIES/camera.msm8974_intermediates/CameraWrapper.o] Error 1
make: *** Waiting for unfinished jobs...
Is this a framework issue?
gigoo25 said:
Having issues compiling the camera I get the error
Code:
device/samsung/klte/camera/CameraWrapper.cpp: In function 'char* camera_fixup_setparams(int, const char*)':
device/samsung/klte/camera/CameraWrapper.cpp:161:20: error: 'KEY_DIS' is not a member of 'android::CameraParameters'
params.set(android::CameraParameters::KEY_DIS, android::CameraParameters::DIS_DISABLE);
^
device/samsung/klte/camera/CameraWrapper.cpp:161:56: error: 'DIS_DISABLE' is not a member of 'android::CameraParameters'
params.set(android::CameraParameters::KEY_DIS, android::CameraParameters::DIS_DISABLE);
^
device/samsung/klte/camera/CameraWrapper.cpp:162:20: error: 'KEY_ZSL' is not a member of 'android::CameraParameters'
params.set(android::CameraParameters::KEY_ZSL, android::CameraParameters::ZSL_OFF);
^
device/samsung/klte/camera/CameraWrapper.cpp:162:56: error: 'ZSL_OFF' is not a member of 'android::CameraParameters'
params.set(android::CameraParameters::KEY_ZSL, android::CameraParameters::ZSL_OFF);
^
device/samsung/klte/camera/CameraWrapper.cpp:164:20: error: 'KEY_ZSL' is not a member of 'android::CameraParameters'
params.set(android::CameraParameters::KEY_ZSL, android::CameraParameters::ZSL_ON);
^
device/samsung/klte/camera/CameraWrapper.cpp:164:56: error: 'ZSL_ON' is not a member of 'android::CameraParameters'
params.set(android::CameraParameters::KEY_ZSL, android::CameraParameters::ZSL_ON);
^
make: *** [/home/rob/android/omni51/out/target/product/klte/obj/SHARED_LIBRARIES/camera.msm8974_intermediates/CameraWrapper.o] Error 1
make: *** Waiting for unfinished jobs...
Is this a framework issue?
Click to expand...
Click to collapse
Looks like maybe some missing Samsung patches
Entropy512 said:
Looks like maybe some missing Samsung patches
Click to expand...
Click to collapse
I appreciate all the help you have been giving me in trying to port Omni to the KLTE! I could not have done it without you!
I ended up having a booting and working build when I removed the camera and RIL
RIL gives me an error of
Code:
frameworks/opt/telephony/../../../device/samsung/klte/ril/telephony/java/com/android/internal/telephony/KlteRIL.java:282: error: no suitable constructor found for SignalStrength(int,int,int,int,int,int,int,int,int,int,int,int,int,boolean)
return new SignalStrength(gsmSignalStrength, gsmBitErrorRate, cdmaDbm, cdmaEcio, evdoDbm,
^
constructor SignalStrength.SignalStrength(Parcel) is not applicable
(actual and formal argument lists differ in length)
constructor SignalStrength.SignalStrength(SignalStrength) is not applicable
(actual and formal argument lists differ in length)
constructor SignalStrength.SignalStrength(int,int,int,int,int,int,int,boolean) is not applicable
(actual and formal argument lists differ in length)
constructor SignalStrength.SignalStrength(int,int,int,int,int,int,int,int,int,int,int,int,boolean) is not applicable
(actual and formal argument lists differ in length)
constructor SignalStrength.SignalStrength(boolean) is not applicable
(actual and formal argument lists differ in length)
constructor SignalStrength.SignalStrength() is not applicable
(actual and formal argument lists differ in length)
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
1 error
It should be a frameworks/opt/telephony issue correct? Except it doesn't display the full file path?
gigoo25 said:
I appreciate all the help you have been giving me in trying to port Omni to the KLTE! I could not have done it without you!
I ended up having a booting and working build when I removed the camera and RIL
RIL gives me an error of
Code:
frameworks/opt/telephony/../../../device/samsung/klte/ril/telephony/java/com/android/internal/telephony/KlteRIL.java:282: error: no suitable constructor found for SignalStrength(int,int,int,int,int,int,int,int,int,int,int,int,int,boolean)
return new SignalStrength(gsmSignalStrength, gsmBitErrorRate, cdmaDbm, cdmaEcio, evdoDbm,
^
constructor SignalStrength.SignalStrength(Parcel) is not applicable
(actual and formal argument lists differ in length)
constructor SignalStrength.SignalStrength(SignalStrength) is not applicable
(actual and formal argument lists differ in length)
constructor SignalStrength.SignalStrength(int,int,int,int,int,int,int,boolean) is not applicable
(actual and formal argument lists differ in length)
constructor SignalStrength.SignalStrength(int,int,int,int,int,int,int,int,int,int,int,int,boolean) is not applicable
(actual and formal argument lists differ in length)
constructor SignalStrength.SignalStrength(boolean) is not applicable
(actual and formal argument lists differ in length)
constructor SignalStrength.SignalStrength() is not applicable
(actual and formal argument lists differ in length)
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
1 error
It should be a frameworks/opt/telephony issue correct? Except it doesn't display the full file path?
Click to expand...
Click to collapse
It looks like the KLTE actually specifies its own RIL subclass (interesting trick, I've never seen that before) and that subclass is depending on something in frameworks/opt/tel that Omni doesn't have.
Either find the missing patch in f/opt/tel or figure out how to adapt KlteRIL.java
Entropy512 said:
It looks like the KLTE actually specifies its own RIL subclass (interesting trick, I've never seen that before) and that subclass is depending on something in frameworks/opt/tel that Omni doesn't have.
Either find the missing patch in f/opt/tel or figure out how to adapt KlteRIL.java
Click to expand...
Click to collapse
I seem to have gotten everything working fine besides the camera. The app and libraries compile fine but when the rom boots I cannot see it in the app drawer. When I try to launch it through the lockscreen it just force closes. Not sure what could be causing the problem? All the permissions seem to be checking out, and messing with the BoardConfiv and Device make files has not seemed to help. Any suggestions on how to fix this? Could it be a framework issue?
gigoo25 said:
I seem to have gotten everything working fine besides the camera. The app and libraries compile fine but when the rom boots I cannot see it in the app drawer. When I try to launch it through the lockscreen it just force closes. Not sure what could be causing the problem? All the permissions seem to be checking out, and messing with the BoardConfiv and Device make files has not seemed to help. Any suggestions on how to fix this? Could it be a framework issue?
Click to expand...
Click to collapse
Look through the logcat for camera errors, especially any errors about missing libraries.
Not appearing in app drawer indicates that Android doesn't think there is a camera present. There are 2349734297320 different things that could cause this - missing camera HAL dependency, kernel/HAL mismatch, many other things.
Entropy512 said:
Look through the logcat for camera errors, especially any errors about missing libraries.
Not appearing in app drawer indicates that Android doesn't think there is a camera present. There are 2349734297320 different things that could cause this - missing camera HAL dependency, kernel/HAL mismatch, many other things.
Click to expand...
Click to collapse
Here is what I found in the logcat
Code:
--------- beginning of crash
[ 06-01 20:08:07.366 3437: 3437 E/AndroidRuntime ]
FATAL EXCEPTION: main
Process: com.android.camera2, PID: 3437
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.android.camera2/com.android.camera.CameraActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.android.camera.util.PhotoSphereHelper$PanoramaViewHelper.onStart()' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2325)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387)
at android.app.ActivityThread.access$800(ActivityThread.java:151)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5254)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.android.camera.util.PhotoSphereHelper$PanoramaViewHelper.onStart()' on a null object reference
at com.android.camera.CameraActivity.onStartTasks(CameraActivity.java:1885)
at com.android.camera.util.QuickActivity.onStart(QuickActivity.java:111)
at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1236)
at android.app.Activity.performStart(Activity.java:6006)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2288)
... 10 more
gigoo25 said:
Here is what I found in the logcat
Code:
--------- beginning of crash
[ 06-01 20:08:07.366 3437: 3437 E/AndroidRuntime ]
FATAL EXCEPTION: main
Process: com.android.camera2, PID: 3437
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.android.camera2/com.android.camera.CameraActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.android.camera.util.PhotoSphereHelper$PanoramaViewHelper.onStart()' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2325)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387)
at android.app.ActivityThread.access$800(ActivityThread.java:151)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5254)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.android.camera.util.PhotoSphereHelper$PanoramaViewHelper.onStart()' on a null object reference
at com.android.camera.CameraActivity.onStartTasks(CameraActivity.java:1885)
at com.android.camera.util.QuickActivity.onStart(QuickActivity.java:111)
at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1236)
at android.app.Activity.performStart(Activity.java:6006)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2288)
... 10 more
Click to expand...
Click to collapse
Pretty much - if you can't figure out what is wrong from reading a logcat, most likely, you can't figure out what parts of the logcat are relevant and which are not.
That excerpt basically tells me nothing.
I assume that was from trying to forcefully start the camera with no camera actually present as far as Android was concerned. That's a symptom, not the root cause of the problem. Based on what you've described, the root cause of the problem will likely be visible even if no attempt is made to use the camera.
Entropy512 said:
Pretty much - if you can't figure out what is wrong from reading a logcat, most likely, you can't figure out what parts of the logcat are relevant and which are not.
That excerpt basically tells me nothing.
I assume that was from trying to forcefully start the camera with no camera actually present as far as Android was concerned. That's a symptom, not the root cause of the problem. Based on what you've described, the root cause of the problem will likely be visible even if no attempt is made to use the camera.
Click to expand...
Click to collapse
I've been messing around with the device configurations and logcats. I I think I have found the culprit for my camera not working. It shows that it loads the module but then fails to open it? Is this a CameraWrapper issue? Still trying to fix the camera so I can use this as a daily build but I have limited experience as a developer.
EDIT: Also the camera shows up on first boot but then disappears and says that the application is not installed. I'm trying to logcat it but not sure how to do that on the first boot without allowing my PC
EDIT2: From the looks of it searching the web it seems to be an issue with frameworks/av/camera/CameraParameters.cpp & frameworks/av/camera/include/CameraParameters.h
Code:
I/CameraService( 381): CameraService started (pid=381)
I/CameraService( 381): Loaded "MSM8974 Camera Wrapper" camera module
I/CameraWrapper( 381): camera_get_number_of_cameras
I/CameraWrapper( 381): check_vendor_module
I/PackageManager( 741): /system/priv-app/MmsService changed; collecting certs
I/PackageManager( 741): /system/priv-app/OmniSwitch changed; collecting certs
E/HAL ( 381): load: module=/system/lib/hw/camera.vendor.msm8974.so
E/HAL ( 381): dlopen failed: cannot locate symbol "_ZN7android16CameraParameters25KEY_DYNAMIC_RANGE_CONTROLE" referenced by "camera.vendor.msm8974.so"...
E/CameraWrapper( 381): failed to open vendor camera module
gigoo25 said:
I've been messing around with the device configurations and logcats. I I think I have found the culprit for my camera not working. It shows that it loads the module but then fails to open it? Is this a CameraWrapper issue? Still trying to fix the camera so I can use this as a daily build but I have limited experience as a developer.
EDIT: Also the camera shows up on first boot but then disappears and says that the application is not installed. I'm trying to logcat it but not sure how to do that on the first boot without allowing my PC
EDIT2: From the looks of it searching the web it seems to be an issue with frameworks/av/camera/CameraParameters.cpp & frameworks/av/camera/include/CameraParameters.h
Code:
I/CameraService( 381): CameraService started (pid=381)
I/CameraService( 381): Loaded "MSM8974 Camera Wrapper" camera module
I/CameraWrapper( 381): camera_get_number_of_cameras
I/CameraWrapper( 381): check_vendor_module
I/PackageManager( 741): /system/priv-app/MmsService changed; collecting certs
I/PackageManager( 741): /system/priv-app/OmniSwitch changed; collecting certs
E/HAL ( 381): load: module=/system/lib/hw/camera.vendor.msm8974.so
E/HAL ( 381): dlopen failed: cannot locate symbol "_ZN7android16CameraParameters25KEY_DYNAMIC_RANGE_CONTROLE" referenced by "camera.vendor.msm8974.so"...
E/CameraWrapper( 381): failed to open vendor camera module
Click to expand...
Click to collapse
Looks like a patch for CameraParameters needed by your device is missing since no one has tried to bring that device up before, or hasn't tried bringing it up with 5.x
Since it's a Qualcomm-based device and likely using CAF repos, you'll probably have to patch frameworks/av-caf and not frameworks/av - see https://lists.omnirom.org/pipermail/maintainers/2015-June/000101.html for details (we need to add this info to the wiki...)
Entropy512 said:
Looks like a patch for CameraParameters needed by your device is missing since no one has tried to bring that device up before, or hasn't tried bringing it up with 5.x
Since it's a Qualcomm-based device and likely using CAF repos, you'll probably have to patch frameworks/av-caf and not frameworks/av - see https://lists.omnirom.org/pipermail/maintainers/2015-June/000101.html for details (we need to add this info to the wiki...)
Click to expand...
Click to collapse
So I would have to split av into two folders then applying I believe THIS patch to av-caf in order to compile it properly?
Also does native-caf branch still have to be merged before compiling?
gigoo25 said:
So I would have to split av into two folders then applying I believe THIS patch to av-caf in order to compile it properly?
Also does native-caf branch still have to be merged before compiling?
Click to expand...
Click to collapse
Well, the splitting of av is already done. Native is already merged with ifdefs (it didn't require nearly as much ifdefing as av, so we have a "unified" CAF+AOSP native). The only thing that is needed for device maintainers is adding av-caf to omni.dependencies - see the maintainers list post I linked to, or look at the Oppo find7 history.
So once you're pulling in av-caf via omni.dependencies, you should be able to apply that patch to av-caf and then submit it to Gerrit for review.
You might want to start idling in IRC, #omni is where most device maintainers are (in fact, all maintainers for supported devices idle their routinely, it's now a requirement for maintainers to routinely idle in IRC so they can see what's going on/people can ping them with questions.)
Entropy512 said:
Well, the splitting of av is already done. Native is already merged with ifdefs (it didn't require nearly as much ifdefing as av, so we have a "unified" CAF+AOSP native). The only thing that is needed for device maintainers is adding av-caf to omni.dependencies - see the maintainers list post I linked to, or look at the Oppo find7 history.
So once you're pulling in av-caf via omni.dependencies, you should be able to apply that patch to av-caf and then submit it to Gerrit for review.
You might want to start idling in IRC, #omni is where most device maintainers are (in fact, all maintainers for supported devices idle their routinely, it's now a requirement for maintainers to routinely idle in IRC so they can see what's going on/people can ping them with questions.)
Click to expand...
Click to collapse
Turns out I might of fixed the problem. Instead of messing with frameworks/av I can just override it with a file inside include/camera? Looking back at the Cyanogenmod repo for my device THIS is present while in my source it is not.
Compiling now. Will post results after.
This is the XDA home of UBER Toolchains.
What is UBERTC?
A bleeding edge toolchain based on latest gnu.org changes and patched with aosp and linaro android patches for optimal performance/battery.
Links
Prebuilts: https://bitbucket.org/matthewdalex/
Source: https://github.com/UBERTC
Communities: UBER Development - https://plus.google.com/u/0/communities/112152563785863538123
DarkRoom Development - https://plus.google.com/u/0/communities/117685307734094084120
Bug Reports/Support
Bug reports and support will be offered on this thread, Github and the Google+ communities in the links section.
Credits
AOSP
Google
Linaro
Cl3Kener
XDA:DevDB Information
UBER Toolchains, Tool/Utility for all devices (see above for details)
Contributors
mdalexca, Cl3Kener
Source Code: https://github.com/UBERTC
Version Information
Status: Stable
Created 2016-12-29
Last Updated 2017-06-17
Great toolchain! Good job, man.
Kindly update the link to pre-builts.
Edit:
Thanks.
@DespairFactor
Hi,
I synced these three chains from your repo today morning and the build was fine,
aarch64-linux-android-4.9, arm-eabi-4.9, arm-linux-androideabi-4.9
however repo synced again few hours back and build is failing every time with this error.
http://pastebin.com/JF1hZAm1
While syncing one commit was truncated for each toolchain.
Can you suggest what's the issue? Thanks.
nicesoni_ash said:
@DespairFactor
Hi,
I synced these three chains from your repo today morning and the build was fine,
aarch64-linux-android-4.9, arm-eabi-4.9, arm-linux-androideabi-4.9
however repo synced again few hours back and build is failing every time with this error.
http://pastebin.com/JF1hZAm1
While syncing one commit was truncated for each toolchain.
Can you suggest what's the issue? Thanks.
Click to expand...
Click to collapse
That's a clang error, not a gcc error. It it segfaulting which is usually something related to memory.
The Flash said:
That's a clang error, not a gcc error. It it segfaulting which is usually something related to memory.
Click to expand...
Click to collapse
Could this commit be a reason for this issue as I read that clang related optimizations may done that, although it's for UberTC and I build using it just today morning.
https://github.com/ashoksoni/android_build/commit/74358aa6c5892f5aed0b16e9833c3a0c4588264f
Sent from my "1+2" powered by Unofficial RR 7.x.x
Compiled by myself
Edit :
I somehow removed my last post mistakenly.
nicesoni_ash said:
Could this commit be a reason for this issue as I read that clang related optimizations may done that, although it's for UberTC and I build using it just today morning.
https://github.com/ashoksoni/android_build/commit/74358aa6c5892f5aed0b16e9833c3a0c4588264f
Sent from my "1+2" powered by Unofficial RR 7.x.x
Compiled by myself
Edit :
I somehow removed my last post mistakenly.
Click to expand...
Click to collapse
It isn't likely because those need to be enabled via boardconfig, which clang are you using?
DespairFactor said:
It isn't likely because those need to be enabled via boardconfig, which clang are you using?
Click to expand...
Click to collapse
I didn't make any changes to my BoardConfig.mk. This is the link.
https://github.com/ashoksoni/android_device_oneplus_oneplus2/blob/cm-14.1/BoardConfig.mk
This looks like the toolchain issue as one other user reported me the same issue. I am using the default toolchain now with same setup except ubertc optimizations and the build is going fine.
Could this be because of this commit?
https://github.com/UBERTC/GCC-UBER/commit/c09770237a5f4443b4328fef8b73636dc07aff41
Coz I only started having this issue after this commit.
Thanks.
nicesoni_ash said:
This looks like the toolchain issue as one other user reported me the same issue. I am using the default toolchain now with same setup except ubertc optimizations and the build is going fine.
Could this be because of this commit?
https://github.com/UBERTC/GCC-UBER/commit/c09770237a5f4443b4328fef8b73636dc07aff41
Coz I only started having this issue after this commit.
Thanks.
Click to expand...
Click to collapse
That commit has been in there for ages. You probably are missing a commit in bionic or build to supplement the opts.
The Flash said:
That commit has been in there for ages. You probably are missing a commit in bionic or build to supplement the opts.
Click to expand...
Click to collapse
Oh, but I only use pre-built ones from DespairFactor's repo. Build is working fine on default tc.
Sent from my "1+2" powered by Unofficial RR 7.x.x
Compiled by myself
nicesoni_ash said:
Oh, but I only use pre-built ones from DespairFactor's repo. Build is working fine on default tc.
Sent from my "1+2" powered by Unofficial RR 7.x.x
Compiled by myself
Click to expand...
Click to collapse
So let me get this straight: the latest toolchains without any additional commits like the Uber opts you posted fail to compile? GCC didn't change at all, if anything were to break it, it would be binutils.
The Flash said:
So let me get this straight: the latest toolchains without any additional commits like the Uber opts you posted fail to compile? GCC didn't change at all, if anything were to break it, it would be binutils.
Click to expand...
Click to collapse
You are right, the pm I got from other user is also reporting the same thing that when he build using binutils 2.5, the error was gone but then the kernel wasn't bootable for him. But since it's clear, do you think now the pre-builts can be build with different binutils?
Sent from my "1+2" powered by Unofficial RR 7.x.x
Compiled by myself
nicesoni_ash said:
You are right, the pm I got from other user is also reporting the same thing that when he build using binutils 2.5, the error was gone but then the kernel wasn't bootable for him. But since it's clear, do you think now the pre-builts can be build with different binutils?
Sent from my "1+2" powered by Unofficial RR 7.x.x
Compiled by myself
Click to expand...
Click to collapse
You can always compile the toolchains yourself, you sync it down just like a ROM and build it with the scripts in the UBERTC organization.
I have a question, is there anything I can do to get the kernel to boot with 7.x?
Boots just fine with 6.x toolchain, but when compiled with 7.x, just stays on the splash screen
The device is Sprint Samsung Galaxy S3, running RR-N
Lonelyskatter12 said:
I have a question, is there anything I can do to get the kernel to boot with 7.x?
Boots just fine with 6.x toolchain, but when compiled with 7.x, just stays on the splash screen
The device is Sprint Samsung Galaxy S3, running RR-N
Click to expand...
Click to collapse
7.x is still in development from GNU, this happened with 6.x when it was in the same state. I suggest waiting until it's official release ,it will likely work at that time.
hello,
just wondering if anyone can assist w/the following error message generated while compiling LOS-13 for OnePlus3 w/UberTC 4.9
build is configured w/the original UBER optimizations...
i've swapped out the physical memory & increased cache from 50-GB to 80-GB
Code:
/tmp/abort_message-19a0bf.s: Assembler messages:
/tmp/abort_message-19a0bf.s:510: Error: inconsistent uses of .cfi_sections
clang++: error: assembler command failed with exit code 1 (use -v to see invocation)
build/core/binary.mk:950: recipe for target '/home/samadhi/los13/out/target/product/oneplus3/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/abort_message.o' failed
make: *** [/home/samadhi/los13/out/target/product/oneplus3/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/abort_message.o] Error 1
make: *** Waiting for unfinished jobs....
target thumb C++: libc++abi_32 <= external/libcxxabi/src/cxa_default_handlers.cpp
/tmp/cxa_aux_runtime-ba7b1a.s: Assembler messages:
/tmp/cxa_aux_runtime-ba7b1a.s:1008: Error: inconsistent uses of .cfi_sections
clang++: error: assembler command failed with exit code 1 (use -v to see invocation)
build/core/binary.mk:950: recipe for target '/home/samadhi/los13/out/target/product/oneplus3/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/cxa_aux_runtime.o' failed
make: *** [/home/samadhi/los13/out/target/product/oneplus3/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/cxa_aux_runtime.o] Error 1
/tmp/cxa_default_handlers-c025bc.s: Assembler messages:
/tmp/cxa_default_handlers-c025bc.s:2706: Error: inconsistent uses of .cfi_sections
clang++: error: assembler command failed with exit code 1 (use -v to see invocation)
build/core/binary.mk:950: recipe for target '/home/samadhi/los13/out/target/product/oneplus3/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/cxa_default_handlers.o' failed
make: *** [/home/samadhi/los13/out/target/product/oneplus3/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/cxa_default_handlers.o] Error 1
make: *** wait: No child processes. Stop.
laperry1 said:
hello,
just wondering if anyone can assist w/the following error message generated while compiling LOS-13 for OnePlus3 w/UberTC 4.9
build is configured w/the original UBER optimizations...
i've swapped out the physical memory & increased cache from 50-GB to 80-GB
Code:
/tmp/abort_message-19a0bf.s: Assembler messages:
/tmp/abort_message-19a0bf.s:510: Error: inconsistent uses of .cfi_sections
clang++: error: assembler command failed with exit code 1 (use -v to see invocation)
build/core/binary.mk:950: recipe for target '/home/samadhi/los13/out/target/product/oneplus3/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/abort_message.o' failed
make: *** [/home/samadhi/los13/out/target/product/oneplus3/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/abort_message.o] Error 1
make: *** Waiting for unfinished jobs....
target thumb C++: libc++abi_32 <= external/libcxxabi/src/cxa_default_handlers.cpp
/tmp/cxa_aux_runtime-ba7b1a.s: Assembler messages:
/tmp/cxa_aux_runtime-ba7b1a.s:1008: Error: inconsistent uses of .cfi_sections
clang++: error: assembler command failed with exit code 1 (use -v to see invocation)
build/core/binary.mk:950: recipe for target '/home/samadhi/los13/out/target/product/oneplus3/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/cxa_aux_runtime.o' failed
make: *** [/home/samadhi/los13/out/target/product/oneplus3/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/cxa_aux_runtime.o] Error 1
/tmp/cxa_default_handlers-c025bc.s: Assembler messages:
/tmp/cxa_default_handlers-c025bc.s:2706: Error: inconsistent uses of .cfi_sections
clang++: error: assembler command failed with exit code 1 (use -v to see invocation)
build/core/binary.mk:950: recipe for target '/home/samadhi/los13/out/target/product/oneplus3/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/cxa_default_handlers.o' failed
make: *** [/home/samadhi/los13/out/target/product/oneplus3/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/cxa_default_handlers.o] Error 1
make: *** wait: No child processes. Stop.
Click to expand...
Click to collapse
That is not related to GCC, those are related to the clang toolchain.
thanks for your reply, it only fails w/UBERTC. w/default TC's it compiles fine...
DespairFactor said:
That is not related to GCC, those are related to the clang toolchain.
Click to expand...
Click to collapse
laperry1 said:
thanks for your reply, it only fails w/UBERTC. w/default TC's it compiles fine...
Click to expand...
Click to collapse
What is the exact toolchain name you are using? Can you give more output too?
While trying to compile LineageOS 13.0 for the Nexus I'm stuck with the following error:
/home/android/android/system/out/host/linux-x86/bin/checkpolicy: loading policy configuration from /home/android/android/system/out/target/product/grouper/obj/ETC/sepolicy_intermediates/policy.conf
device/asus/grouper/sepolicy/init_shell.te:2:ERROR 'unknown type init_shell' at token ';' on line 14035:
allow init_shell sysfs_firmware_writable:file { open append write };
#line 1 "device/asus/grouper/sepolicy/init_shell.te"
checkpolicy: error(s) encountered while parsing configuration
external/sepolicy/Android.mk:85: recipe for target '/home/android/android/system/out/target/product/grouper/obj/ETC/sepolicy_intermediates/sepolicy' failed
make: *** [/home/android/android/system/out/target/product/grouper/obj/ETC/sepolicy_intermediates/sepolicy] Error 1
make: *** Waiting for unfinished jobs....
target thumb C++: init <= system/core/init/keychords.cpp
make: *** wait: No child processes. Stop.
Anyone being able to tell me how to get rid of that?
The type init_shell is not defined, i.e. your sepolicy configuration of the device tree does not match to the ROM sources. Probably the best way is to remove those definfitions temporaryly and to build the ROM in permissive mode. Later you can restrict / adapt the permissions to your needs.
Sooo... after some time I got back to this little project.
What I have achieved so far is that LineageOS 13.0 does build for grouper. However, when trying to boot it always starts back in recovery.
What I have done starting from stock LineageOS code for grouper is correcting "tvdpi" to "hdpi" like in 14.1 (https://github.com/LineageOS/androi...mmit/7dd33b8eb8c13b682202405e48c6d7962d5a73d7), and referring the build process to the correct kernel config, which is not "lineageos_android_defconfig" but "lineageos_grouper_defconfig". Then I have tried to substitute the apparently incorrect sepolicy definitions by those of GtrCraft (https://github.com/GtrCraft/cyanogenmod_grouper).
The result can't be too bad, because it actually builds. However, since it is not starting up I'm kinda stuck here again. Anyone being able to provide a hint why this is so or how to diagnose it?
And just for the obvious question: I believe that 14.1 is too much for grouper, although there is a somehow official build. And also, Xposed does not work officially yet on 14.1 (and does not anymore on 11.0). Therefore I would really like to upgrade to 13.0.
Still no luck, compile is finishing without errors, ROM will not boot, but throws me back to recovery. Maybe someone can take a look into the ROM:
https://www.mediafire.com/folder/ts4x8unxshb2z9n,tyv3j58t82z56a8/shared