Make ipv6 work, document liblinphone_tester compilation.

This commit is contained in:
Simon Morlat 2014-11-13 22:54:26 +01:00
parent 14ef834a32
commit b4a81b9122
4 changed files with 24 additions and 9 deletions

View file

@ -454,6 +454,7 @@ update-mediastreamer2-project:
liblinphone_tester: prepare-sources prepare-cunit prepare-liblinphone_tester javah
$(NDK_PATH)/ndk-build -C liblinphone_tester $(LIBLINPHONE_OPTIONS) -j$(NUMCPUS) TARGET_PLATFORM=$(ANDROID_MOST_RECENT_TARGET)
$(MAKE) -C liblinphone_tester
javah:
ant javah

28
README
View file

@ -1,7 +1,12 @@
LINPHONE for ANDROID
****************************
****************************
* LINPHONE for ANDROID *
****************************
COMPILATION INSTRUCTIONS
************************
To build liblinphone for Android, you must:
-------------------------------------------
0) download the Android sdk with platform-tools and tools updated to latest revision (at least API 16 is needed), then add both 'tools' and 'platform-tools' folders in your path.
1) download the Android ndk (=r9d to target devices with Android < 5 or =r10c to target devices with Android >= 5) from google and add it to your path (no symlink !!!).
2) install yasm, nasm, curl, ant, rsync and the autotools: autoconf, automake, aclocal, libtoolize, pkgconfig
@ -25,21 +30,30 @@ Make sure you filled the ant.properties values for key.store and key.alias in or
sign the generated apk (it will ask you the password during the process)
To run the tutorials:
--------------------
1) open the res/values/non_localizable_custom.xml file and change the value of the show_tutorials_instead_of_app to true.
2) compile again using make && make install.
3) /!\ don't forget to put it back to false to run the linphone application normally. /!\
To create an apk with a different package name, you need to edit the custom_rules.xml file:
To create an apk with a different package name
----------------------------------------------
You need to edit the custom_rules.xml file:
1) look for the property named "linphone.package.name" and change it value accordingly
2) also update the values in the AndroidManifest file where the comment <!-- Change package ! --> appears
3) update the path to the sounds in the linphonerc-factory files in the res folders and optionally change default sip account on linphonerc-default
4) run again the Makefile script by calling "make"
To run the liblinphone test suite on android
--------------------------------------------
Simply run
$ make liblinphone_tester
This will be build everything, generate an apk, and install it on the connected device if any.
You can speed up the compilation by using ccache (compiler cache, see https://ccache.samba.org/). Simply export:
export NDK_CCACHE=ccache
TROUBLESHOOTING
*****************************
TROUBLESHOOTING
***************
If you encounter the following issue:
E/dalvikvm( 2465): dlopen("/data/app-lib/org.linphone-1/liblinphone-armeabi-v7a.so") failed: Cannot load library: soinfo_relocate(linker.cpp:975): cannot locate symbol "rand" referenced by "liblinphone-armeabi-v7a.so"...
it's because you have installed the android-21 platform (which is chosen automatically because it's the most recent) and you deployed the apk on a android < 5 device. Use ndk r9 to fix this.
@ -53,8 +67,8 @@ java.lang.ExceptionInInitializerError
Caused by: java.lang.UnsatisfiedLinkError: Couldn't load linphone-armeabi-v7a: findLibrary returned null
...
CUSTOMIZATION
*****************************
BUILD OPTIONS
*************
Some options can be passed to make, like "make SOME_OPTION=SOME_VALUE".

@ -1 +1 @@
Subproject commit adac1d173a97a96f6c5bb9d2a2301c35a738d8b7
Subproject commit 8499138370776602bb6d61c1a4e48b1d44200cb0

@ -1 +1 @@
Subproject commit c0b7ae8359a83deac4814f3047bcb9764599d1dc
Subproject commit 32e7ffe2bd03b789f7e6f4ac2dcba5f3122abf5a