./adb connect <VirtualBox IP address>:5555, after this command, you should see something like below

* daemon not running. starting it now ** daemon started successfully *connected to <VirtualBox IP address>:5555

./adb logcat to dump the debug log

2. using adb with a NAT'ed VM

The steps above work nicely if you have a VM which is set up to use Bridged or Host-Only adapters

However, if you have a NAT'ed VM you cannot connect to the VM IP from the host

You will need to set up port forwarding for a host port to be forwarded to the VM port 5555 (which is adb)VBoxManage modifyvm <VMName> --natpf1 adb,tcp,*,<localport>,*,5555Example from one machine:VBoxManage modifyvm froyo --natpf1 adb,tcp,*,5555,*,5555

Once this is done, you should see the local port (i.e. 5555 in this case) bound on the host via netstat -a

You can now connect to the VM by adb localhost:5555

2a. using adb with KVM (qemu)

If you are using KVM instead of Virtualbox you may find the following useful.

note the networking arguments: this allows "user networking" which doesn't need root access, while still allowing adb connections, by forwarding them on port 4444 of localhost, so to connect you would use:adb connect localhost:4444

to disconnect simply (you'll need to do this after stopping/restarting a VM session):adb disconnect

Its also possible to pass-through usb devices from the host to android guest running in kvm by adding the parameters:-usb -usbdevice host:2.* where in the above example that would pass through all devices on the number 2 usb host bus.

3. how to use gdb with gdbserver:

Android-x86 comes with a preinstalled gdbserver. And you can find it in /sbin/gdbserver. To use gdb to debug your process, you need to:

set up host-only network as mentioned earlier

in the terminal emulator, run su

in the terminal emulator, run gdbserver <VirtualBox ip address>:1234 [application binary name with the path] or [--attach pid]

on your host machine, run gdb [path of your application binary]

gdb > target remote <VirtualBox ip address>:1234

gdb > set solib-search-path <the path to all the shared library binaries>