yashsingh1/xdaforums huggingface dataset:
[Desire Android Development] Droidzone:
Honestly, your crosstool-ng was so great (once I was able to correct all the issues that I got on the way, with your help) so I never had to worry about all the command line options..

Clarify a small point for me..

I now have a good gcc with all the necessary dependencies (glibc, glibc-ports etc although minimalistic). Now I have to use this gcc to build better glibc which can be actually used to build things other than kernel. Right? I tried to go into glibc-ports and making it first..

droidzone@supernova:~/Downloads/glibc-ports-2.11.1$ export ARCH=arm
droidzone@supernova:~/Downloads/glibc-ports-2.11.1$ CROSS_COMPILE="arm-bravo-"
droidzone@supernova:~/Downloads/glibc-ports-2.11.1$ ls -l

droidzone@supernova:~/Downloads/glibc-ports-2.11.1$ make
make -q `find sysdeps -name configure`
cvs -Q export -d glibc-ports- -r glibc- ports
cvs export: No CVSROOT specified! Please use the `-d' option
cvs [export aborted]: or set the CVSROOT environment variable.
make: *** [glibc-ports-.tar] Error 1

Seems that there are a lot of things that crosstool was doing!!
[Desire Android Development] theGanymedes:
No, right now you have full fledged ready-to-use GlibC with you. Crosstool-NG made it all ready to use, you don't have to compile GlibC again - I just recommend rebuilding just simply because it's easier to identify which files to put into the phone if you do it. BTW, once is enough at this point - for since that building again and again was to build the system initially only.

BTW; you shouldn't compile ports seperately - I wrote it on the headers installation part what to do: you just rename the extracted folder to "ports" and then move it to the actual glibc directory. GlibC will install those ports automatically.

After the building and install complete, you don't need to send "*.a" and "*.o" files (in lib folder) and headers (include dir) and libexec folder (hosts some stuff about gcc libraries) to your phone, for since these folders are necessary just for compiling applications.
[Desire Android Development] Droidzone:
So does specifying the CROSS_COMPILER= option give the path to glib too?

I just tried installing busybox on the Desire..

sh-3.2# ~/system/xbin/busybox --install
busybox: /bin/[: No such file or directory
busybox: /bin/[[: No such file or directory
busybox: /sbin/acpid: Invalid cross-device link
busybox: /bin/add-shell: No such file or directory
busybox: /bin/addgroup: No such file or directory
busybox: /bin/adduser: No such file or directory
busybox: /sbin/adjtimex: Invalid cross-device link
busybox: /sbin/arp: Invalid cross-device link
busybox: /bin/arping: No such file or directory
busybox: /bin/ash: No such file or directory
busybox: /bin/awk: No such file or directory
busybox: /bin/base64: No such file or directory
busybox: /bin/basename: No such file or directory
busybox: /bin/beep: No such file or directory
busybox: /sbin/blkid: Invalid cross-device link
busybox: /sbin/blockdev: Invalid cross-device link
busybox: /sbin/bootchartd: Invalid cross-device link
busybox: /sbin/brctl: Invalid cross-device link
busybox: /bin/bunzip2: No such file or directory
busybox: /bin/bzcat: No such file or directory
busybox: /bin/bzip2: No such file or directory
busybox: /bin/cal: No such file or directory
busybox: /bin/cat: No such file or directory
busybox: /bin/catv: No such file or directory
busybox: /bin/chat: No such file or directory
busybox: /bin/chattr: No such file or directory
busybox: /bin/chgrp: No such file or directory
busybox: /bin/chmod: No such file or directory
busybox: /bin/chown: No such file or directory
busybox: /sbin/chpasswd: Invalid cross-device link
busybox: /bin/chpst: No such file or directory
busybox: /sbin/chroot: Invalid cross-device link
busybox: /bin/chrt: No such file or directory
busybox: /bin/chvt: No such file or directory
busybox: /bin/cksum: No such file or directory
busybox: /bin/clear: No such file or directory
busybox: /bin/cmp: No such file or directory
busybox: /bin/comm: No such file or directory
busybox: /bin/cp: No such file or directory
busybox: /bin/cpio: No such file or directory
busybox: /sbin/crond: Invalid cross-device link
busybox: /bin/crontab: No such file or directory
busybox: /bin/cryptpw: No such file or directory
busybox: /bin/cttyhack: No such file or directory
busybox: /bin/cut: No such file or directory
busybox: /bin/date: No such file or directory
busybox: /bin/dc: No such file or directory
busybox: /bin/dd: No such file or directory
busybox: /bin/deallocvt: No such file or directory
busybox: /bin/delgroup: No such file or directory
busybox: /bin/deluser: No such file or directory
busybox: /sbin/depmod: Invalid cross-device link
busybox: /sbin/devmem: Invalid cross-device link
busybox: /bin/df: No such file or directory
busybox: /sbin/dhcprelay: Invalid cross-device link

My .config for busybox is attached

I did the softlinks option.

Edit:

Solved it

/system/xbin/busybox --install /system/xbin
[Desire Android Development] cdesai:
You confuse me more n more

what i meant to say

that init is run on boot

but we rename it

and instead use our modded init(symlink to init.sh) and init.sh executes our script

then you can do anything you want by the script

but nothing would be there before init, we need to do that manually

you can use this way

#!/sbin/busybox sh
#this file is /sbin/pre-init.sh

# standard
mkdir /dev
mknod /dev/null c 1 3
mknod /dev/zero c 1 5
mknod /dev/urandom c 1 9

# internal & external SD
mkdir /dev/block
mknod /dev/block/mmcblk0 b 179 0
mknod /dev/block/mmcblk0p1 b 179 1
mknod /dev/block/mmcblk0p2 b 179 2
mknod /dev/block/mmcblk0p3 b 179 3
mknod /dev/block/mmcblk0p4 b 179 4
mknod /dev/block/mmcblk1 b 179 8
mknod /dev/block/stl1 b 138 1
mknod /dev/block/stl2 b 138 2
mknod /dev/block/stl3 b 138 3
mknod /dev/block/stl4 b 138 4
mknod /dev/block/stl5 b 138 5
mknod /dev/block/stl6 b 138 6
mknod /dev/block/stl7 b 138 7
mknod /dev/block/stl8 b 138 8
mknod /dev/block/stl9 b 138 9
mknod /dev/block/stl10 b 138 10
mknod /dev/block/stl11 b 138 11
mknod /dev/block/stl12 b 138 12
mknod /dev/block/bml0!c b 137 0
mknod /dev/block/bml1 b 137 1
mknod /dev/block/bml2 b 137 2
mknod /dev/block/bml3 b 137 3
mknod /dev/block/bml4 b 137 4
mknod /dev/block/bml5 b 137 5
mknod /dev/block/bml6 b 137 6
mknod /dev/block/bml7 b 137 7
mknod /dev/block/bml8 b 137 8
mknod /dev/block/bml9 b 137 9
mknod /dev/block/bml10 b 137 10
mknod /dev/block/bml11 b 137 11
mknod /dev/block/bml12 b 137 12
[Desire Android Development] Droidzone:
I think we should make a repository of files built for bravo, and share these. We never know when we might use it..

Here's a box.net link where you can upload anything upto 50MB in size

I've added zip, unzip, dosfstools, busybox 1.19.3 (full version-includes every command)
[Desire Android Development] cdesai:
forgot to put the link :P
[Desire Android Development] theGanymedes:
I see you now - you're trying to go "behind" the init - not running something at that level... BTW, makenod is well thought; that can help mounting file system!

BTW: With this solution, the busybox binary will always reside in memory, right?
[Desire Android Development] cdesai:
Busybox resides is sbin(aka in ramdisk aka in kernel) so its available forever, regardless of which OS the phone is using

^^this helps a lot!
[Desire Android Development] Droidzone:
Here's the link.

http://www.box.net/shared/o9bc5uu0fi5y06m81v0v

I don't have to mknod everything, right? Only mmcblk0p2 which I want?

TouchPal-d from my Desire running Supernova Extreme Rom - 450 apps and counting. .
[Desire Android Development] Droidzone:
Btw, is there really any need to do it like that? Is there a disadvantage of moving the mtd mount of /system to the beginning? If that is possible, there is no point of using/sbin/busybox. One might as well use the /system/xbin version. Of course this is not the case when I want to mount /system separately

TouchPal-d from my Desire running Supernova Extreme Rom - 450 apps and counting. .
[Desire Android Development] cdesai:
yep just what u wanna use, but it wont hurt adding em all in, for future use

there is, when we use some other os (e.g. debian)

Didnt get the mtd mount point thing.
[Desire Android Development] theGanymedes:
No, I didn't mean that... Since Init is now a script; and this script is calling "the actual" init now; and since job control won't work on this "single user mode" (well, actually will work, but background jobs will be killed when init script ends if you use job control - which means that init is killed - and this is fatal!); the busybox should reside in memory during whole execution.

Apparently you're not very familiar with OS internals - linux stuff; are you? :)

If you're not to modify the "internal system" -like changing the root file-system; changing the mount point of system and such- it's definitely not necessary to do all this stuff at this level.. Well, technically, doing those means you're changing the OS completely, and there are also some kernel-command line settings you can use, which makes this effort a little "not very special" again..

BTW; how did you make Hibernate work on your system? Does it have anything to do with Rom internals (seems like that to me..)?
[Desire Android Development] SxcKieranGrr:
Although I have literally no idea about this, I would still like to say thanks because it's people like you that let me enjoy my phone to its full potential. So on behalf of all people that don't understand code or linux etc. Thankyou :-)
[Desire Android Development] cdesai:
Yea, not much, and got a bit confused by you're last post (busybox in memory), but would you expect a 13yo to know that?

But I am learning things, thanks to people like you!
[Desire Android Development] Droidzone:
Btw...what happens to the compile messages in stdout? Does it get logged somewhere. I need to do a grep on it (preferably after compile is over)
[Desire Android Development] Droidzone:
Just solved an extended battery charging issue which gave me a headache for a long, long time! :D

New Kernel fix thread coming up! :)
[Desire Android Development] theGanymedes:
Wow! That's awesome, then! Let me explain in detail this thingy:

Due to computer architecture we use right now (it's called "Von Neumann Architecture") every application should first get loaded to the RAM; and then should be executed only from the RAM. You cannot run a program from the Hard-disk directly.

Now, in our design, we call a program from shell script, right? A Shell script is actually a bunch of lines run by the Shell program - Busybox in our case. For since we run a shell script at init, we call busybox and it runs the commands in script file.

At some point, script file goes to "exec /init" line - calls the init executable. In here, shell automatically runs the program and waits until it get terminated; and when it terminated continues with the other commands at file. Ergo, since "init" executable never does (and never should) terminate in a linux system, bash always waits for that executable in memory to terminate - we introduced some other executable to reside in memory now.

Well, in bash we can give a command with and "&" at the end to make bash "not wait for program to terminate and go on" but this is another program for us, because of design of Linux application management, because of the reasons below:

A Linux system consists of special "modes" which are called "Runlevels". Runlevel 0 is shutdown, Runlevel 1 is single user mode (the system can only run one person's program at a time in this level - like old DOS system), Runlevels 2-5 is Multiuser environments (normal modes we use) and Runlevel 6 is Reboot.

If you put the system into one of these Runlevels manually, some special batch-jobs are done. When system first boots, it first runs Runlevel 1, and then goes to either Runlevel 2,3,4 or 5 (Note its not obligatory to go sequentially, you can skip to any runlevel directly).

At Runlevel 1, only one person's program can run, and in our case it's busybox-bash. Now, bash branches to /init executable and let's say that we gave command with an ampersand at the end (as a background job). Init starts to run, and does init job. While it's running at background, our bash script gets to and end... What's going to happen now?

Since script is done, bash will terminate. And since bash did terminate, every "child" processes it called also should terminate - it's because we're at Runlevel 1 (if we were to be at Runlevel 2,3,4 or 5; the process wouldn't terminate, it would just be the child process of "init" automatically). But init shouldn't terminate, because it's critically important!

And here is Linux 101 for you :)

You can redirect the standart output to a file easily with ">" directive. Like

find . -name "file" [B]>[/B] ./filelist

This directive will print every file found in the current directory (and it's subdirectories) to a file named filelist.

However, you won't be able to see what's the actual output without opening the file now. In order to do that as well, we use "tee" program and piping "|"

find . -name "file" [B]| tee[/B] ./filelist

You can learn more about tee program by reading it's manual page (man tee) ;)
[Desire Android Development] Droidzone:
Thanks...That was essential info for me too..

Btw..I was asking whether the make messages (errors, warnings etc) can be seen..Whether it actually gets logged. I guess I can do that with the same redirection..

make [etc ] > makemessages.txt 2>&1

Then open another terminal and use a

tail -f makemessages.txt

And finally do the grep on makemessages.txt

:)
[Desire Android Development] theGanymedes:
Precisely.. BTW, "grep" does work on file directly, too - without the need of tail:

grep "<to search>" <file name>

Note that, as I said earlier, if you want to see messages on screen as well, use "tee" rather than ">"
[Desire Android Development] Droidzone:
Ah yes, tee saves me an additional step :D
[Desire Android Development] theGanymedes:
Current Status

Well, I just wanted to keep this post alive with the plans I make :)

Lately, I'm working on deb packages and apt package management system. I think I'll try to make a apt-repository; so that the users can download and install applications like in ubuntu/debian. Maybe we can even write a frontend in the future for it under android (right now, I don't know anything about Android programming and don't have much time to learn it..)

About Xorg... Well, since they fight for framebuffer device under Android, I'm trying to find a way to either "lock" or "suspend" the Android during X session to solve the problem, but I really don't know what should I do precisely. First I thought I should make a panel-like screen and redirect X output to this panel, but it seems this approach is like writing Xorg under Android completely (requires me to know how Xorg handles screen device - /dev/fb0 in case of Android). Thought of using named pipes for it, but I don't think it'll work because it requires me to write a "stub" framework driver completely (whaaat?!!?..

Also thought of using a "dummy" screen, and giving framebuffer completely to X, but most probably this one won't work too - because Android will refresh the screen now and then (I think) and this will impede X again..

Does anyone (who used Graphical programming under Android somehow) know how can I "lock" the screen framebuffer device? I have to fool the Android system somehow that "I'm drawing on device" so that it won't (unless, of course, something critical - like phone call recieve - is happening) draw on the screen..

I also need some info-advice about how can I use JNI to manage native code stuff...

And gotta do my perl homework.. :)
[Desire Android Development] danarama:
Being able to install .deb packages would be wicked.
[Desire Android Development] rikmer:
Has anybody of you guys managed to install this on Oxygen 2.3.1? I didn't try the installer v0.5 yet but with v0.4 it always ended in a bootloop. I did install Data2SD beforehand.

I will try it again today with Data2Ext and the v0.5 version and let you know.
[Desire Android Development] theGanymedes:
Didn't try it on any AOSP ROM - like Oxygen - but it would direly help if you can connect your PC to your device and send me the logcat output. Most probably it's some sort of missing file or linkage...
[Desire Android Development] theGanymedes:
You can already - just a compiled apt package is enough, but normal DEB repositories are tweaked for debian distributions which is a little different then Android placement. It's why I need to make my own repo - helps are appreciated tho :)
[Desire Android Development] rikmer:
I tried v0.5 now but same problem. The thing is that I can't provide you with logcat entries because it seems that it doesn't even come to the state where adb gets information. I tried

sudo ./adb logcat

but it only says

- waiting for device -

in this case. It is probably because it already bootloops before "android" is displayed on the screen.
[Desire Android Development] Droidzone:
I'd say the issue is in kernel init stage.

Wonder what sorts of packages dpkg installs/
[Desire Android Development] theGanymedes:
Then most probably your reason is about Data2SD or Data2EXT... Because if it stalls at that "waiting for device" screen, the kernel doesn't even run adbd - which is definitely not something I've touched.

Try to install Data2EXT (or whatever) and try to run your system. If that's ok and your system bootloops only when you install GlibC, maybe my ramdisk altering methods doesn't work for you (should actually, if you have cpio and gunzip/gzip commands - check with a terminal emulator to write these commands and see the result ...). If that's the case, I'll try to make a workaround for that sometime - sorry for that in advance ;)
[Desire Android Development] rikmer:
I checked whether the cpio and gunzip/gzip commands are available and they are. Also Data2Ext works kinda smoothly. The bootloops only occur after I flash the GlibC recovery zip.

Is there any restriction about the partition sizes in the hboot?

Thank you so far for your attention.

I really like to congratulate you for this awesome idea.
[Desire Android Development] theGanymedes:
There is no "strict" rule, but library takes approx. 40 MB and installs to MTD partition. Check if you have enough of empty place with "df -h" command.
[Desire Android Development] theGanymedes:
Well, curl is compiled and apt-get is on the way.. Seems like we'll forget to go to recovery for sometime after this :)

A few days ago, I've tested something and it had given me results as I expected: since kernel and ramdisk are loaded to RAM and then never used from disk again; it's perfectly OK to change boot partition while using phone - which means using apt-get can remove all necessity of using recovery for such installations - reboot is still necessary tho ;) Can someone who knows about Android-JNI programming lead me to a good (and a compact) source about it? I'm on a very tight schedule and don't want to dig thousands of pages for something simple :)

Keep on reading ;)
[Desire Android Development] theGanymedes:
Well, Apt-get is done.. Now I need to make a "test" repo..

BTW, I realized today that GlibC library doesn't include C++ libraries! So, expect a new version of package about these days ;)
[Desire Android Development] Droidzone:
tell me apt-get works on packages designed for Linux..

Swyped from my Desire running Supernova Extreme Rom - 450 apps and counting. .
[Desire Android Development] theGanymedes:
Don't think it would; because the placement of objects at Debian is different than the one in Android - there might be some sort of checks as well; didn't try it yet.
[Desire Android Development] danarama:
So forgive my ignorance but how working is this now? What can be run?
[Desire Android Development] theGanymedes:
Well, everything is working now and everything can run :) The aim was (and still is) to run every linux application given that it's compiled for ARM to run under Desire and it works very good till now. For since I couldn't find very much of applications compiled, I'm also compiling some apps and putting them here.

I'm currently working on Xorg (for linux GUI applications to run without a porting under Android), apt (advanced package manager for Debian distros - I'm going to edit it a little to make it available for packages we make) and perl (nearly done).
[Desire Android Development] theGanymedes:
Well, good news! APT-GET is WORKING !!

As a test, I'll try to install some debian package - not expecting to work tho; I expect apt to run on my repo, not official one after all..

Wow, it really feels nice to use apt under desire :D
[Desire Android Development] danarama:
Are you just using a standard terminal emulator?
[Desire Android Development] theGanymedes:
Yeah, usually, or ADB Shell - if it's going to make any difference..
[Desire Android Development] Droidzone:
I want to compile xorg! Need midnight commander! :D

Swyped from my Desire running Supernova Extreme Rom - 450 apps and counting. .
[Samsung Epic 4G Touch] jirafabo:
I had this on my old HTC Hero. Is it possible to make a transparent lockscreen for my Epic Touch? I really like the lock to just be the bar across the homescreen. Looks slick to me.
[Galaxy Tab 10.1 Q&A, Help & Troubleshooting] Ede_Moskau:
An important question:

I live in Germany and I bought a Samsung Galaxy 10.1 LTE 4G Verizon from USA. Now, I can not see on my Tap and change/switch to my German LTE-Provider.

What is wrong? What can I do?

Thanks

Ede
[Galaxy Tab 10.1 Q&A, Help & Troubleshooting] morkli:
Tab could be locked to Verizon.

Also, Verizon's LTE is on 700Mhz. In Germany, I don't think LTE is on 700Mhz, only 800Mhz and possibly 2600Mhz I think, so not compatible.

---------- Post added at 05:57 PM ---------- Previous post was at 05:55 PM ----------

Also, have a look at http://xdaforums.com/showthread.php?t=1190856.
[HTC Desire S] tj80:
Hi,

I'm currently running a stock Desire S and whilst I'm generally very happy with it there's one glaring omission - Bluetooth DUN tethering. I want to use my phone with the Mercedes Comand Online system, which uses Bluetooth DUN to connect to the internet. The default answer seems to be to use PdaNet, but I have tried the latest version 3.02 and it doesn't work. I know PdaNet works in as much as I can connect my laptop over DUN, but it won't connect through the car. I did wonder if it was because my phone is set up to use a proxy server on its connection but there's nowhere to enter this in the car - having said that, though, I did no configuration on my laptop and it just worked. I emailed June Fabrics who say they will try to support this in some future release, but in the mean time is there any other option?

Cheers,

Tim
[HTC Desire S] kumootje:
Hi,

I'm new to this forum, but was looking all over the place to check how to get full bluetooth support with the DUN profile on my stock HTC Desire S.

Like tj80, I'm also keen to connect my Desire to my car (Toyota with the new Touch&Go system, which has DUN/PAN support).

Any ideas are welcome
[HTC Desire S] agupta80:
I have the exact same issue with my merc as well. pdanet just doesn't work.

I don't really want to use a blackberry :(
[HTC Desire S] tj80:
I emailed JuneFabrics about PDA Net and also MobileStream about Easy Tether - both said they "might" implement full DUN but it's not a priority. I really don't understand why nobody thinks it's important given that it's the standard way of connecting mobile phones to other devices for data - TomToms for live traffic, lots of car manufacturers, etc, there was even an article on the BBC website today about how connected cars were the next big thing!

Cheers,

Tim
[HTC Desire S] MikiBest:
Download BlueDUN Trial app from Google Play, it works fine for Mercedes Benz Comand OnLine and also for Toyota Touch&Go (from version 1.12 )

New version was tested for Tom Tom Rider too :)
[HTC Desire S] kumootje:
Thanks MikiBest. You made my day! Glad I could be of help ;)
[Xperia Arc Q&A, Help & Troubleshooting] vasigar:
hi my arc is just 3 months old. I also have the same crack issue in the front housing near the sensor. Will it be replaced without any cost in India. Mine is covered under warranty. Has anyone does this before in India?