Hey guys,
For a few days, I was wondering what could happen if we could compile the Standard C library (not trimmed one like Bionic) and compile some linux applications for ARM processor (say, Desire). I successfully compiled the GlibC, and now do have the .a and .so files.
The problem is, I don't know where to put them, so the dynamically linked applications can reach them! I could put them to /system/lib, but I don't want to overwrite the files already there (I don't want to crash the working parts of the system). I was thinking to put them to (say) /data and create symbolic links to /system/lib, but - as I said - what about the libraries which have the same name?
Questions or Problems Should Not Be Posted in the Development Forum
Please Post in the Correct Forums and Read THIS
Moving to General
Sorry for the wrong section post. I found the solution though..
The thing is to be done is editing the Ramdisk/init.rc; changing LD_LIBRARY_PATH variable, accordingly (say, /data/lib). Once you do that, the system loads libraries from the folders, in specified order.
However, you must be cautious because since at the boot time, Data might not be mounted yet, the libraries that are installed there could not be read. Ergo, don't delete (or move) the system libraries (like I did ) - the phone won't boot without them.
Another issue is libc. Since bash shell is compiled with bionic, it requires bionic version of libc; not glibc. I'm going to try to overcome this by recompling shell; yet still there might be other problems (there might be other native executables need Bionic Libc)
I'll update this thread as I try new things.
theGanymedes said:
Sorry for the wrong section post. I found the solution though..
The thing is to be done is editing the Ramdisk/init.rc; changing LD_LIBRARY_PATH variable, accordingly (say, /data/lib). Once you do that, the system loads libraries from the folders, in specified order.
However, you must be cautious because since at the boot time, Data might not be mounted yet, the libraries that are installed there could not be read. Ergo, don't delete (or move) the system libraries (like I did ) - the phone won't boot without them.
Another issue is libc. Since bash shell is compiled with bionic, it requires bionic version of libc; not glibc. I'm going to try to overcome this by recompling shell; yet still there might be other problems (there might be other native executables need Bionic Libc)
I'll update this thread as I try new things.
Click to expand...
Click to collapse
I just put glibc in /lib, at boot /lib is empty, but then I mount the contents of /lib aftwards. Ideally it would mount from a custom init.rc script. I suppose if you put the libc in /data/lib you could sym link that to /lib during boot. I am pretty sure that /lib needs to be in the root dir and its contents must be executable. I found I had to edit some header file somewhere, I'll get back to ya once I start poking my head round Android again, syncing back up atm.
Related
Hi, I saw that in one of the roms a ramdisk was used to increase performance, so I thought, lets try that.
I found this ramdisk on the forum, even referenced from a HD tread:
http://forum.xda-developers.com/showthread.php?t=382944
Installed it (in Windows directory, exe and dll), ran it. (have sdkcerts installed)
Works.
Reboot, with auto start link
Now the ramdisk.exe and ramdisk.dll have been changed! And don't start anymore.
Copied the files gain, and this time I write protected them, reboot.
Again the files are changed, they now are not changed in size (like after the first try), but have another icon and filename has been put to uppercase.... (also happened the first try)
Ok. Doesn't seem to work. Now I tried to delete the ramdisk files but cannot..... (Removed the autostart lnk) Cannot remove the System and Read-Only attributes with Total Commander...
Found some registry entries referring to the ramdisk, bit I get access denied when I try to remove them.
Some how the ramdisk driver still seems to be loaded... ?
1) How can I remove those files?
2) Is there a good working ramdisk for the HD?
Thanks a bunch,
Ok, moved the exe and dll from the windows directory to the root, then could delete them, and removed most of the registry, but could not remove the "Ramdisk" entry itself from the HKLM\Drivers\BuiltIn section. Did all content in this entry.
So problem solved, sort of.
Still would like to know of a working ramdisk for the HD
only copy the ramdisk.dll over to the windows directory and don't copy over the ramdisk.exe or raml.exe (after having setup the Ramdisk's relevant registry settings).
That seemed to fix the issue 4 me.
As the title says...How would one create a directory under sys/ ?
Its for the elusive Meizu M9 rom
Sent from my ADR6300 using XDA App
Use Root Explorer app and mount sys as R/W
gr8nole said:
Use Root Explorer app and mount sys as R/W
Click to expand...
Click to collapse
I've done that, however the changes won't stick. Even something as elementary as renaming another folder almost instantly gets rewrote back to the original. Even through adb, it doesn't work. It must be something far deeper than root explorer can touch, driver maybe?
i am also facing the same problem.....plz help
aavisangle said:
i am also facing the same problem.....plz help
Click to expand...
Click to collapse
Some root directories such as /sys are part of the ramdisk compiled within a kernel. These folders are rewritten every boot. In order to add a folder to /sys you would need to unpack the kernel, extract the ramdisk, and then edit / add a command to init.inc.rc to create the folder at boot. However you would also have to add commands to populate any files / folders you plan on putting in the new folder to the init.inc.rc file othere wise they will be over written at boot also. Then once edited you would have to recompile and flash the modified kernel.
i just want to change the file "/sys/class/switch/h2w/state" content to 0
state - 0 for unplugged, 1 for plugged.
could you please guide me through the process...........
thanks in advance....
aavisangle said:
i just want to change the file "/sys/class/switch/h2w/state" content to 0
state - 0 for unplugged, 1 for plugged.
could you please guide me through the process...........
thanks in advance....
Click to expand...
Click to collapse
If you are just editing files already there you may be able to use a script run at boot to change the files contents. What is your ultimate goal here? Are you trying to listen to the fm app without headphones or what? I tried setting the state files flag to 0 with a script but was unable to do so, it wouldnt stick. However if you go to /sys/class/htc_accessory/fm and edit the flag file to say disable, it sets the /sys/class/switch/h2w/state file to 0. Not sure if this helps you or not. To set this every boot create a script that says
Code:
echo "disable" >> /sys/class/htc_accessory/fm/flag
Then pop it in the init.d folder if your rom has init.d support, if not get script manager from the market and set it to run the script at boot and as superuser.
my problem is that my phone is detecting headphone by default.....that's why whenever i play songs or video on phone it goes to headphone and didn't go on phones speaker........just in short my problem is i cant play songs on phone speaker....just because headphone is detected by default............
this problem persists after flashing and reflashing different roms.......
so i am trying to undetect my headset.........
plz guide me.......if i am wrong
aavisangle said:
my problem is that my phone is detecting headphone by default.....that's why whenever i play songs or video on phone it goes to headphone and didn't go on phones speaker........just in short my problem is i cant play songs on phone speaker....just because headphone is detected by default............
this problem persists after flashing and reflashing different roms.......
so i am trying to undetect my headset.........
plz guide me.......if i am wrong
Click to expand...
Click to collapse
Did you try what i posted in my last post? That should make it think headphones arent plugged in.
cmlusco said:
Some root directories such as /sys are part of the ramdisk compiled within a kernel. These folders are rewritten every boot. In order to add a folder to /sys you would need to unpack the kernel, extract the ramdisk, and then edit / add a command to init.inc.rc to create the folder at boot. However you would also have to add commands to populate any files / folders you plan on putting in the new folder to the init.inc.rc file othere wise they will be over written at boot also. Then once edited you would have to recompile and flash the modified kernel.
Click to expand...
Click to collapse
Don't do this. The file structure in sys is based on the build of the kernel and not actually part of the ramdisk, just the sys folder itself might be in the ramdisk. Definitely don't attempt to add directories to it. Sys has its own filesystem, sysfs, which isn't a typical filesystem. These files are created at every boot. You can edit existing files (not all of them though) but not create new ones.
---------- Post added at 12:18 AM ---------- Previous post was at 12:14 AM ----------
aavisangle said:
my problem is that my phone is detecting headphone by default.....that's why whenever i play songs or video on phone it goes to headphone and didn't go on phones speaker........just in short my problem is i cant play songs on phone speaker....just because headphone is detected by default............
this problem persists after flashing and reflashing different roms.......
so i am trying to undetect my headset.........
plz guide me.......if i am wrong
Click to expand...
Click to collapse
It should only detect headphones if something is actually plugged in. If it does otherwise, something sounds wrong. Unless you're trying to have it play through the phone speaker when you have headphones pluged in?
tiny4579 said:
Don't do this. The file structure in sys is based on the build of the kernel and not actually part of the ramdisk, just the sys folder itself might be in the ramdisk. Definitely don't attempt to add directories to it. Sys has its own filesystem, sysfs, which isn't a typical filesystem. These files are created at every boot. You can edit existing files (not all of them though) but not create new ones.
Click to expand...
Click to collapse
My bad I havent really ever tried messing with kernels to much, i just remember seeing the sys folder in there and assumed that if you needed to add a folder or files that would be the plave to do it. Shows ya how much i know, guess ya learn something new every day.
Hi. please, write your own method to port.. i have one.. its from someone so its not by me.. i think when everyone write his own method. we can find the best way..to cooperate
Well I generally start by looking for the rom I want to port on a device with similar specs to ours or has some compatibility. I have used the Wildfire, Hero, MyTouch 3g.
Then I find the most compatible kernel, usually 2.6.32.
Having downloaded the rom unpack the zip.
Remove any folders or files you normally don't see in the root folder (boot.img, META-INF)
Add a sysinit.rc from fresh froyo/gingerbread/Myn's donut/Incubus eclair (depending on which os version your port is)
If you are porting Sense change the bootclasspath in sysinit.rc (what to change it to: /system/framework/core.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/com.htc.framework.jar:/system/framework/com.htc.android.pimlib.jar:/system/framework/com.htc.android.easopen.jar:/system/framework/com.scalado.util.ScaladoUtil.jar)
Then tar the thing.
Put it in andboot
boot the kernel (I do everything android on NAND)
install it to system.img
clear dalvik cache (I find this almost always necessary with ported roms)
and see what happens!
If it boots with no bootloop, strip all unnecessary apps (I usually start and just remove the "data" folder)
Continue stripping anything you don't want and then release.
If it doesn't boot right, I usually fiddle with the sysinit.rc first and a little in the build.prop.
Sysinit.rc I work with by extracting the one from the boot.img (don't ever completely remove it) and merging them
build.prop = hopefully self explanatory (if not I can write the rest later)
Try, Try again!!
i have this one...
I'll look into the specs of wildwire and let you know if my steps would work. Just kinda busy this holiday season. But my steps were pretty simple. We have to know if this is an odex'd or deodexed version. If it is odexed version, it would be nice to deodex it first. I use Android kitchen from dsixda. The only part we need is the system folder. It has apps, etc, lib, bin and the rest...basically under the system we need to put Fresh Froyo (FF) files build.prop and sysinit.rc and move it to wildfire's system folder (these two files are required for booting)then under /system/etc you need to grab vold.conf from (FF) and move it to wildfire's /system/etc. Ooops..I'll have to get back to you. Dinner time BTW, vold.conf is what loads SD card. I looked at the specs of wildfire and not sure if it works since it has a 7225 processor and 5 megapixel but it's worth a try. Then /system/etc, copy ppp and passwd from liquid's kernel and put it in that folder (like permissions). Compare the folders with Fresh Froyo and if something is missing from Fresh Froyo to wildfire. Copy wifi folder (don't copy ppp folder, delete it if wildfire ROM has it). Now lets go to system/lib. Copy the following files from Fresh Froyo to wildfire libaudio.so, libaudiopolicy.so (audio drivers) libcamera.so libcamera_client.so libcameraservice.so (camera drivers) libgps.so (gps driver) libhtcgeneric-ril.so (phone driver) libicudata.so. Then copy egl folder to hw folder and bluez-plugin folder. Now go to system/modules and delete all files and get modules from l1q1d's latest kernel and put it in the system/lib/modules folder. Then go to system folder and copy bin folder, media folder, xbin and usr folder to wilfire system. That's it. Save the system folder as androidinstall.tar and see how it goes. Goodluck.
can u update nbh which u used? i have many of them but no works
I use an Atools edited 2.6.32 kernel with built in o'c to 520mhz and a bigger system NAND partition.
Almost or All Wildfire build work without importing system files just mess around with the sysinit.rc and build.prop.
The screen res is the same as our lovely phone
Since we are talking about porting here is my question:
I also have a huawei u8300 with stock eclair (2.1 update 1) and stock kernel (2.6.29)
I don't have the source files of the kernel (T_T)
Phone is based on msm7225 BUT has a physical qwerty keyboard, so I NEED to use the stock kernel to have it working (tried other kernels from 7225 platform but they crashes after the press of any key on the keyboard).
It is possible in your opinion to make the stock kernel working with a froyo build?
And if so, how?
I've tried to use the stock kernel with varius system images from various 7225 phones but with no luck :/, I need to learn! Be my teacher xD!
TuoNonno said:
Since we are talking about porting here is my question:
I also have a huawei u8300 with stock eclair (2.1 update 1) and stock kernel (2.6.29)
I don't have the source files of the kernel (T_T)
Phone is based on msm7225 BUT has a physical qwerty keyboard, so I NEED to use the stock kernel to have it working (tried other kernels from 7225 platform but they crashes after the press of any key on the keyboard).
It is possible in your opinion to make the stock kernel working with a froyo build?
And if so, how?
I've tried to use the stock kernel with varius system images from various 7225 phones but with no luck :/, I need to learn! Be my teacher xD!
Click to expand...
Click to collapse
I dont know your answer, sry.. (Offtopic: My opinion - you are on bad device thread..) So my answer is i dont know..
Hello everyone. I see a lot of very basic android questions floating around the forums, so I figured I'd give a VERY basic rundown of the android filesystem for those who don't know. (If you're even slighty experienced, this'll seem like a "duh" thread, you should skip this. This is for new people.)
Ok, to understand android, first thing you need to understand are the basic partition structures. There are 5 android partitions.
boot
cache
recovery
system
data
Before I get into the partitions, you'll have to understand what a mount point is. When you "mount" a drive, you are making it available to the system. On linux (and by extension, android), you need to have a mount point. This is a directory somewhere that serves as a path for the mounted filesystem. So for example, let's say I wanted to mount mmcblk0p1 to a temp directory to edit it. For this example I'll create a directory /data/temp. Now you'd mount mmcblk0p1 /data/temp. When you read the contents of the directory temp under the directory data, you'll see all the info stored on mmcblk0p1. Even something as simple as a flash drive needs to be mounted under linux. If you're an ubuntu user, usually it automounts to /mnt/name of device.
Now, when you boot android, the first thing it does is boot up the linux kernel (when you see the tmobile splashscreen, that's when the kernel is loading.) Next, it loads up the ramdisk. Both of these files are on the boot partition. (When you open up a cwm zip file, you'll see boot.img in there, that's where these reside.) There are two files on the boot partition. zImage (the linux kernel), and initrd.gz (the cpio archive containing the ramdisk.)
What is the ramdisk you ask? Well, very simply, it's the place where the root file system is loaded, and where the init.rc resides. The init.rc is the android startup script (again, basic analogy). If you'd really like to learn about android and how it works, this is the first file I'd start reading.
On to the partitions:
boot - Described above, containing the zimage and initrd.gz
recovery - this is where either the stock recovery or clockwork recovery is located. This is only accessed when entering recovery mode.
cache - You guessed it, this is where some parts of android cache it's file. (Not to be confused with the dalvlik cache, that's located on the data partition.)
system - this is where the system is located. (Esentially the rom you're flashing.)
data - this is the partition where all your installed apps go, as well as the location of a couple parts of the system, like the dalvik-cache and the batterystats.bin file. (Quite a few more, just givinig examples.)
So what does all this mean to you? Well, I see a LOT of people asking about wipes before installs, or asking about flashing kernels, this is why I took the time to explain this.
When you enter cwm, and do a backup, it creates 5 .img files on your sdcard. (One for each of the partitions mentioned above.) When you flash a kernel, it only replaces the boot.img, and a couple files in the system folder. Usually these are kernel modules like the wifi module, and any other modules that aren't compiled into the system. (Although most kernel builders build cifs.ko and all that right into the kernel so the modules aren't needed.)
When you flash a rom, it will always replace the /system and /boot partitions. The rest, that depends on the rom. If you'd like to know what your rom is doing, open up the cwm zip file, and go to meta-inf/com/google/android and you'll see 2 files. Updater-script and update-binary. Updater-script will tell you what it does on install. (You'll see it mounting the partitions it needs, what it does and doesn't format, and also it does a whole bunch of simlinks.) Simlinks, or symbolic links, are either files or directories that point to somewhere else. For example, let's say you are a user who uses ext-sd. What you do is create a simlink for /data that points to the ext3 partition on your sdcard. This way, anytime the system goes to /data it writes somewhere else. Most of the simlinks created in android are more for busybox commands, but that's for another post
If you'd like to see what your mount points are, from an android terminal emulator (or of course adb, but if you are experienced with adb chances are you don't need any of this info in the first place ), type mount. (You might need to type su first, hit enter, then mount). This will list all your mount info. If you'd like to know the actual device name of the mount point, you'd look here. On ours, for example, it's:
mmcblk0p24 is /system
mmcblk0p26 is /cache
mmcblk0p25 is /data
and so on.
Ok, finally, a couple other questions I see often:
Why does my system "hotboot"?
When a system hotboots, it means that zygote has crashed. This is the virtual machine that android runs in. So if you are using your phone, and you all of a sudden go back to the boot animation (NOT the splashscreen with the kernel logo), you just hot-booted. When an application allows you to hotboot all it does is the following command from inside linux: pkill zygote (or pkill -9 zygote).
How do I calibrate my battery?
The batter calibration is a file called batterystats.bin. This is located in /data/system. When you get to 100% charge, if you delete this file, it'll start over on the battery calibration. (There are also market apps to do this for you for the squeamish.)
Other notable files:
gps.conf
Located in the /system/etc folder. This has all the gps configuration, nameservers, and things like this.
build.prop
Located in /system
A lot of device info is stored in here. For more info, google it.
Hopefully this wasn't too mashed together and confusing. I tried to follow a logical order, but I've had way too much turkey and beer today, so I'll post this and let it fly.
Have a happy thanksgiving everyone!
Good stuff, thanks OP.
Powered by the SGSII....
Very very useful for someone like me who knows a bit here a bit there but not sure of the whole picture.
Thanks!!
this should be useful for alot of noobs!
Thanks so much for this, being new to android this is incredibly useful. Bookmarking!
Sent from my SGH-T989 using xda premium
This thread should help alot of new people that just joined this forum and that are new .
Very informative, thank you.
So I am trying to port ICS to our kaisers, but the problem is I have very limited developer knowledge (actually none). As a result I am trying to port the HTC Wildfire's ics builds. But the only things I can do, is:
extract the system file out of the Wildfire build
delete a couple of files to get in down in size (the wildfire has more RAM than the Kaiser)
add the sysinit.rc file to the system file
recompress the system file to androidinstall.tar
And the furthest I have come with this method is seeing the boot logo flikkering while I still saw some of the white code on the screen.
The matter of the fact just is, I REALLY WANT TO LEARN HOW TO BUILD MY ANDRIOD BUILDS, but I don't have the knowledge or time to exactly learn the java code. So as a result I really just want to know what the keypoints are? CAn somebody please point me in the right direction?
** As an example: when you open the system file of an android build you get all kinds of folders, and from most of them I don't know what they mean, like from bin, etc, framework, lib, usr and xbin I haven't got the slightest clue of what they are there for.**
**Also I don't know what there should be changed in the build.prop and the sysinit.rc when you are trying to a build of another device on the kaiser. Are the build.prop and sysinit.rc dependent from the version of Android you are giong to run or are the dependant of the kind of device you're gonna run it or are they dependant of both??**
hom.hom said:
So I am trying to port ICS to our kaisers, but the problem is I have very limited developer knowledge (actually none). As a result I am trying to port the HTC Wildfire's ics builds. But the only things I can do, is:
extract the system file out of the Wildfire build
delete a couple of files to get in down in size (the wildfire has more RAM than the Kaiser)
add the sysinit.rc file to the system file
recompress the system file to androidinstall.tar
And the furthest I have come with this method is seeing the boot logo flikkering while I still saw some of the white code on the screen.
The matter of the fact just is, I REALLY WANT TO LEARN HOW TO BUILD MY ANDRIOD BUILDS, but I don't have the knowledge or time to exactly learn the java code. So as a result I really just want to know what the keypoints are? CAn somebody please point me in the right direction?
** As an example: when you open the system file of an android build you get all kinds of folders, and from most of them I don't know what they mean, like from bin, etc, framework, lib, usr and xbin I haven't got the slightest clue of what they are there for.**
**Also I don't know what there should be changed in the build.prop and the sysinit.rc when you are trying to a build of another device on the kaiser. Are the build.prop and sysinit.rc dependent from the version of Android you are giong to run or are the dependant of the kind of device you're gonna run it or are they dependant of both??**
Click to expand...
Click to collapse
ICS on Kaiser? Big mistake...
I know see that you have gotten it right about ics on the kaiser, but I still want to develop my own builds for the kaiser, gingerbread builds, then. So can anyone shed their light on helping me into the right direction of creating my own build from the source or porting a build from another (htc) phone??
if you want to port android start from this - take system from similar device (example click or wildfire) and follow directions from this thread http://forum.xda-developers.com/showthread.php?t=996431. Method from post #3 definitely works for Froyo and Gingerbread. If you find problem really helpful is using logcat and DDMS.
In my opinion porting AOSP ICS for Kaiser at the moment is a waste of time. Will be more problematic and you never will achieve a fast, fully operational system. BUT with Cyanogenmod9 situations can be change...
Almost there....
I have used the Official Cyanogenmod Stable release from the HTC Wildfire to port (as a test) and I have used Scoot CyanogenMod 7.1.0 RLS3 (Gingerbread 2.3.5) [07/08/11] to paste the files from into the CM for the buzz.
Michga said:
i have this one...
I'll look into the specs of wildwire and let you know if my steps would work. Just kinda busy this holiday season. But my steps were pretty simple. We have to know if this is an odex'd or deodexed version. If it is odexed version, it would be nice to deodex it first. I use Android kitchen from dsixda. The only part we need is the system folder. It has apps, etc, lib, bin and the rest...basically under the system we need to put Fresh Froyo (FF) files build.prop and sysinit.rc and move it to wildfire's system folder (these two files are required for booting)then under /system/etc you need to grab vold.conf(1) from (FF) and move it to wildfire's /system/etc. Ooops..I'll have to get back to you. Dinner time BTW, vold.conf is what loads SD card. I looked at the specs of wildfire and not sure if it works since it has a 7225 processor and 5 megapixel but it's worth a try. Then /system/etc, copy ppp and passwd from liquid's kernel and put it in that folder (like permissions)(2). Compare the folders with Fresh Froyo and if something is missing from Fresh Froyo to wildfire. Copy wifi folder (don't copy ppp folder, delete it if wildfire ROM has it). Now lets go to system/lib. Copy the following files from Fresh Froyo to wildfire libaudio.so, libaudiopolicy.so (audio drivers) libcamera.so libcamera_client.so libcameraservice.so (camera drivers) libgps.so (gps driver) libhtcgeneric-ril.so (phone driver) libicudata.so. Then copy egl folder to hw folder and bluez-plugin folder. Now go to system/modules and delete all files and get modules from l1q1d's latest kernel(3) and put it in the system/lib/modules folder. Then go to system folder and copy bin folder, media folder, xbin and usr folder to wilfire system. That's it. Save the system folder as androidinstall.tar and see how it goes. Goodluck.
Click to expand...
Click to collapse
So I have tried the method of post 3 of the link, but all I get is the kaiser to boot in Android, but it never stops booting, the infinite bootloop. I believe the cause for this bootloop to be the sheer size of the androidinstall.tar(as jholtom already explaines in his post in this thread). It at its least becomes 150 mb. I can't get it any smaller, because I need to add the xbin file of Scoot's Cyanogenmod 7.1 for Kaiser, which is 67 mb of size. While the official Cyanogen Wildfire rom also is about 67 mb of size.
Also some other problems
(1)vold.conf: I can only find vold.fstab does this matter?
(2)how do i extract passwd from liquid's kernel? And do I need to put this in the permissions folder?
(3)Instead of the latest files as posted by Michga, I have used the files from the update.zip provided by Scoot in his kernel with separate cache thread: http://forum.xda-developers.com/showthread.php?t=1152219
You need strip the system as much as possible. cut out the unnecessary applications that take space and are not required to work (example: radiofm, rom manager, thememanager), tts voices, rings even some libraries - try to compare catalogs from Scoot_CyanogenMod_7.1.0_RLS3 and wildfiresystem. Strip unnecesary files, copy all the missing files. If your androidinstall.tar reach size below 100mb should be ok with standard partitions. But you can always enlarge the partitions in atools.
What do you mean that xbin have 67mb? It have about 7mb
As you can see Michga wrote this for Froyo so some files will vary. (1) copy only volf.fstab (2) may be unneeded for scoot's kernel- i'm not copy this and system works (3) you can use files from scoot 7.1 RLS3 - these are the same modules as in the update.
Install the android sdk on computer, run DDMS and plug the Kaiser. You will then be able to see what at the time the phone is doing and what is causing the problem.
Sorry for my english
Well, also the strangest thing is that I redownloaded Scoot_CyanogenMod_7.1.0_RLS3 build from this thread, http://forum.xda-developers.com/showthread.php?t=948134, and extracted the file to my desktop and the file is 148 mb in size of which the xbin folder is 69.6 mb in size. How is that possible? I am using Windows 7 x64 and I am extracting the file with Winrar. And when I use 7-zip to get the system file back to androidinstall.tar, this file is also 148 mb, BUT THIS FILE I AM ABLE TO INSTALL....
I am using 7zip only (also Win 7 x64) and extracted RLS3 have 84.3MB. Strange...
hom.hom said:
Well, also the strangest thing is that I redownloaded Scoot_CyanogenMod_7.1.0_RLS3 build from this thread, http://forum.xda-developers.com/showthread.php?t=948134, and extracted the file to my desktop and the file is 148 mb in size of which the xbin folder is 69.6 mb in size. How is that possible? I am using Windows 7 x64 and I am extracting the file with Winrar. And when I use 7-zip to get the system file back to androidinstall.tar, this file is also 148 mb, BUT THIS FILE I AM ABLE TO INSTALL....
Click to expand...
Click to collapse
Impossible, you can't install 148 MB file because System partition on Kaiser is just 120 MB!
So my first problem with the immens build sizes have been solved by using 7zip for every step in my android adventure instead of Winrar.
But know the real problem the booting problem. I ran ddms and the conclusion I get is:
system_process Audiosystem AudioPolicyService not published, waiting....
....
....
HTC Acoustic can't open /dev/htc-acoustic -1
AudioHardware Could not set acoustic parameters to share memory -1
I already googled this problem and the solution is supposed to be to create an android dummy audio driver, but as I said already my knowledge is really limited. So i don't know how to create an android dummy audio driver.
**I also uploaded the warn screen of the ddms...**
did you copy libaudio.so, libaudiopolicy.so (and i'm not sure now - libaudioflinger.so?) from scoots build?
First of all, THANK YOU!!!!
**I just needed to copy all the libaudioxxxx.so files from Scoot's build to the Wildfire's build.**
I am able to boot Zerorom 1.0 from the HTC kaiser now. But there are still a couple of quirks in the build, like the missing statusbar, the not working wifi and the screen looks like it has the wrong panel type in this build. While with Scoot's build it's A-ok.
Do you have logs from ddms?
Maybe you cut too much. Of course you adjust build.prop to our phone. To resolve graphic problems make sure that you still have SystemUI.apk and replaced folders hw and egl from scoot's build. To wifi make sure that you replaced in etc: firmware and wifi folder. If this not help swap libhardware-legacy.so
These are the files of the ddms log and the files which I used to port the official Cyanogenmod release of the HTC Wildfire to the HTC Kaiser. The problems are a flikkering screen it goes on and off all the time, improper (or actually none proper) detection of touch and no wifi.
**I needed to separate the files I copied into two separate folder, system1 and system2, because otherwise I couldn't upload it to the site. I hope that this gives a proper insight in what I have exactly done. Before I copied this files, I deleted the original ones from the Wildfire's build.**
well... What am I to do with it? Download zerorom, merge with this and see what's wrong? I dont know what you do to get tar smaller and what contains folders from porting system. Im think that You better create a new thread called example Zerorom alpha port 0.1 and upload androidinstall.tar to mediafire or somewhere. Then I or someone else see or flash this to phone and tell you what is missing and why libskia.so and launcher still crashing
I've been watching the progress here and I have a few things to point out.
What if the panel size in the kernel is correct, but the screen is "over-drawn"? Maybe ICS doesn't have an option to draw to a screen with a 320x240 resolution? This would explain the status bar and launcher issues. Try rewriting the kernel with the highest resolution (480x328 I think?).
And about the WIFI issue, did you remember to copy the .ko file over to the new build and add the update?
I Know I'm pissing in the wind; I had less luck getting Honeycomb ported from the Wildfire to the Kaiser, so this is looking interesting. You could strip to the basics and just replace things one at a time like I did and see what happens.
PoXFreak, if I good understand this
hom.hom said:
I am able to boot Zerorom 1.0 from the HTC kaiser now. But there are still a couple of quirks
Click to expand...
Click to collapse
he wants to port zerorom from wildfire. And this is just 2.3.7(cyanogenmod) with few applications changed to only looks like ICS. So it shouldn't be these problems with porting gingerbread...
Same rules apply: If the original rom's apps require a resolution higher than what's provided, there could be overscan or "over-shoot" of the original screen into unseen parts of the screen.
As far as the WiFi issue, the wifi.ko file from Scoot's 2.3.5 CM "should" work, but I have not tested it myself.
I do have an unused Kaiser witha good screen and only 2 bad blocks if he wants help with it. I would need all the files he's working with in a tarball posted to mediafire or some other file hosting site.
Im not sure whats in the guide you are looking at and quite frankly I dont feel like looking, but a few of us many moons ago were working on Sense Roms. One trick we used was stripping the system folder of its apps and placing them in a new folder "app_s" in data then symlinking /data/app_s to system/app at boot time. This was one way of shrinking you system files. I also managed onced instead of using data/app_s I used sdcard/app_s however this slows things down a tad but it worked. We eventually gave up on sense roms cause the sense widgets would not work properly and the entire rom was extremely laggy. Good luck with ICS If you happen to get it running I will install it for ****s and giggles however I no longer use this phone, and havent for several years but I still have it and it still boots up
hom.hom:
What is the total size of this build?
Could you not move apps from /system/apps to /data/apps?
What about swapping libskia.so and install a different Launcher from another build?