[Olsr-dev] olsrd-0.5.6 on android

Sven-Ola Tuecke (spam-protected)
Tue Sep 15 10:26:12 CEST 2009


done some research for my brand new mobile phone. As a result, here's a first 
binary for running olsrd on that thing:


* Of course, you need a "/system/bin/su" (aka "root access"). Also a recent 
Android Cupcake (Vers 1.5) is required AFAICT. Google for "android 
superuser.zip" to jailbreak your device with a decent security app which 
*asks* before executing someting as root.

* The binary olsrd dynamically binds the "Bionic" libc.so which is included 
with the installed operating system files. No static link and no additional 
fiddeling with the libc config required (which is something special 
currently, I can tell you). To run, install ConnectBot from the market, open 
a "local" console and type "ff" for switching to ad-hoc and "ff o" for 
running olsrd.

* To compile for yourself (e.g. if your Android has other installation 
pathes), mercurial-checkout olsrd-0.5.6, install the Android-NDK (native 
devel kit) and do "make OS=android DEBUG=0 build_all". A couple of things do 
not work, mainly "setbuf(stdout, NULL)" segfaults and there is no regex lib 
hence no nameservice currently. The txtinfo and httpinfo plugins are fine. If 
you install a Debian(armel) on that phone, you may also compile (+gdb-debug!) 
natively on the device. In the latter case, the normal "make OS=linux" will 
run also but that links in the Debian libc-6.so.

* The Android GUI does not scan for nor support connecting to IBSS ("Ad-Hoc") 
currently. This is switched on by directly interacting with wpa_supplicant 
(see /data/local/bin/ff script). Watch the network settings while switching 
to IBSS until it shows your preferred IBSS is connected. Maybe you need 
to "wpa_cli" to fixup the "ff" script (e.g. "addnetwork" returns another 
number -> enter number in "ff" script.

// Sven-Ola

More information about the Olsr-dev mailing list