Version 3 (modified by 12 years ago) (diff) | ,
---|
It is possible to build the jni part of the library against the host system, to ease testing.
What you need
You need to have Android set up for compiling. You might avoid a lot of work if you deselect some of the builders (because you do not need to compile any libraries for this to work), but you are on your own there...
You need the ability to build pidgin. Then compile and install the default branch of the android repository the normal way.
Those are the configure parameters to use:
./configure \ --disable-gtkui --disable-consoleui --disable-avahi \ --disable-screensaver --disable-sm --disable-gstreamer \ --disable-vv --disable-idn --disable-meanwhile --disable-nm \ --disable-nss --disable-gnutls --disable-dbus --disable-farstream \ --disable-perl --disable-tcl \ --disable-plugins --with-static-prpls="all" \ --disable-schemas-install
If you do not want to install it, you might adapt the Eclipse configuration (Project → Properties → C/C++ Build → Settings → Includes; Mind to select the right build configuration)
How it works
Simply select X86 as active build configuration. Then build it. On Ubuntu, everything should work. If it does not, you might miss headers. Add them to the Includes section of the Build settings.
How to use
Elcipse outputs an library file. You can simply load it with System.loadLibrary. Then you can use everything im.pidgin.libpurple provides you with. Since this project has no dependency on any Android stuff, it is safe to use on a normal PC and you could deploy your java application you wrote with this library normally.
Before loading libpurple call:
System.loadLibrary("im.pidgin.libpurple"); PurpleLibraryLoader.fakeLoad(); /* avoids android loads */
Ensure to have the library that was build on your path, e.g. by adding the JVM Argument:
-Djava.library.path=/usr/local/lib:${workspace_loc:im.pidgin.libpurple/X86}