diff --git a/contrib/mobile/Android/src/org/geuz/onelab/Gmsh.java b/contrib/mobile/Android/src/org/geuz/onelab/Gmsh.java
index cf7dc24ee21fb31bc7917737a6264022e6118416..4fb69e05158e41391e70b4175389b0366b39ee00 100644
--- a/contrib/mobile/Android/src/org/geuz/onelab/Gmsh.java
+++ b/contrib/mobile/Android/src/org/geuz/onelab/Gmsh.java
@@ -10,6 +10,7 @@ public class Gmsh implements Parcelable {
         System.loadLibrary("f2cblas");
         System.loadLibrary("f2clapack");
         System.loadLibrary("petsc");
+        System.loadLibrary("slepc");
         System.loadLibrary("Gmsh");
         System.loadLibrary("GetDP");
         System.loadLibrary("Onelab");
diff --git a/contrib/mobile/CMakeLists.txt b/contrib/mobile/CMakeLists.txt
index d85a1ab15f16e77734dfa14e817b6bdf273bbb32..4d227d2722d6805e30e1cff45d7c1bd101d8b33e 100644
--- a/contrib/mobile/CMakeLists.txt
+++ b/contrib/mobile/CMakeLists.txt
@@ -155,10 +155,11 @@ if(ENABLE_BUILD_ANDROID)
   set_target_properties(androidOnelab PROPERTIES OUTPUT_NAME Onelab)
   target_link_libraries(androidOnelab ${LIBRARY_DEPS}  ${EXTERNAL_LIBRARIES})
   find_library(PETSC_LIB petsc PATH_SUFFIXES lib)
+  find_library(SLEPC_LIB slepc PATH_SUFFIXES lib)
   find_library(BLAS_LIB f2cblas PATH_SUFFIXES lib)
   find_library(LAPACK_LIB f2clapack PATH_SUFFIXES lib)
   set(ONELAB_LIB ${CMAKE_CURRENT_BINARY_DIR}/libs/libOnelab.so)
-  if(PETSC_LIB AND BLAS_LIB AND LAPACK_LIB AND ONELAB_LIB)
+  if(PETSC_LIB AND SLEPC_LIB AND BLAS_LIB AND LAPACK_LIB AND ONELAB_LIB)
     add_custom_target(androidProject
       COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/Onelab/
       COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/models/
@@ -168,6 +169,7 @@ if(ENABLE_BUILD_ANDROID)
       COMMAND ${CMAKE_COMMAND} -E copy ${GETDP_LIB} ${CMAKE_CURRENT_BINARY_DIR}/Onelab/libs/armeabi-v7a/
       COMMAND ${CMAKE_COMMAND} -E copy ${ONELAB_LIB} ${CMAKE_CURRENT_BINARY_DIR}/Onelab/libs/armeabi-v7a/
       COMMAND ${CMAKE_COMMAND} -E copy ${PETSC_LIB} ${CMAKE_CURRENT_BINARY_DIR}/Onelab/libs/armeabi-v7a/
+      COMMAND ${CMAKE_COMMAND} -E copy ${SLEPC_LIB} ${CMAKE_CURRENT_BINARY_DIR}/Onelab/libs/armeabi-v7a/
       COMMAND ${CMAKE_COMMAND} -E copy ${LAPACK_LIB} ${CMAKE_CURRENT_BINARY_DIR}/Onelab/libs/armeabi-v7a/
       COMMAND ${CMAKE_COMMAND} -E copy ${BLAS_LIB} ${CMAKE_CURRENT_BINARY_DIR}/Onelab/libs/armeabi-v7a/
     )
@@ -187,7 +189,7 @@ if(ENABLE_BUILD_ANDROID)
   message(STATUS " * Finally you can build the app with ant 'ant debug'")
   message(STATUS "")
  
-  else(PETSC_LIB AND BLAS_LIB AND LAPACK_LIB AND ONELAB_LIB)
-    message(STATUS "Cannot make Android project without PETSc or without BLAS or without LAPACK or without \"Onelab library\"")
-  endif(PETSC_LIB AND BLAS_LIB AND LAPACK_LIB AND ONELAB_LIB)
+  else(PETSC_LIB AND SLEPC_LIB AND BLAS_LIB AND LAPACK_LIB AND ONELAB_LIB)
+    message(STATUS "Cannot make Android project without PETSc or SLEPc or without BLAS or without LAPACK or without \"Onelab library\"")
+  endif(PETSC_LIB AND SLEPC_LIB AND BLAS_LIB AND LAPACK_LIB AND ONELAB_LIB)
 endif(ENABLE_BUILD_ANDROID)
diff --git a/contrib/mobile/utils/android_petsc_reconfigure-armv7-android-linux.py b/contrib/mobile/utils/android_petsc_reconfigure-armv7-android-linux.py
index d920a1baf9a6d06af5200e1a984d146d1c00dfa8..ae7712b1c91c5c0574a0e6260a1d8204700b28c8 100755
--- a/contrib/mobile/utils/android_petsc_reconfigure-armv7-android-linux.py
+++ b/contrib/mobile/utils/android_petsc_reconfigure-armv7-android-linux.py
@@ -4,16 +4,21 @@ if __name__ == '__main__':
   import os
   sys.path.insert(0, os.path.abspath('config'))
   import configure
+  ndkroot='/Users/geuzaine/android-ndk-r8b/'
+  ndkbin=ndkroot + 'toolchains/arm-linux-androideabi-4.6/prebuilt/darwin-x86/bin/'
+  ndklibs=ndkroot + 'toolchains/arm-linux-androideabi-4.6/prebuilt/darwin-x86/user/libs/'
+  ndklibs2=ndkroot + 'platforms/android-14/arch-arm/usr/lib/'
+  externallibs='/Users/geuzaine/src/gmsh/contrib/mobile/frameworks_android/petsc/'
   configure_options = [
-    '--AR=/opt/android-ndk/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/arm-linux-androideabi-ar',
-    '--CC=/opt/android-ndk/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/arm-linux-androideabi-gcc',
-    '--CFLAGS=--sysroot=/opt/android-ndk/platforms/android-8/arch-arm',
-    '--CPP=/opt/android-ndk/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/arm-linux-androideabi-cpp',
-    '--CPPFLAGS=--sysroot=/opt/android-ndk/platforms/android-8/arch-arm',
-    '--CXX=/opt/android-ndk/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/arm-linux-androideabi-g++',
-    '--CXXFLAGS=--sysroot=/opt/android-ndk/platforms/android-8/arch-arm -fsigned-char -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -fdata-sections -ffunction-sections -fPIC -Wno-psabi -frtti -fexceptions -mthumb -O3 -fomit-frame-pointer -DNDEBUG -fPIC -isystem /opt/android-ndk/platforms/android-8/arch-arm/usr/include -isystem /opt/android-ndk/sources/cxx-stl/gnu-libstdc++/4.6/include -isystem /opt/android-ndk/sources/cxx-stl/gnu-libstdc++/4.6/libs/armeabi-v7a/include -lstdc++',
-    '--LDFLAGS= -L/opt/android-ndk/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/user/libs/armeabi-v7a  -L/home/maxime/Stage/_gmsh/CMakeFiles/ndklibs/armeabi-v7a  -L/home/maxime/Stage/petsc-3.3-p6/armv7-unknown-linux/lib',
-    '--LD_SHARED=/opt/android-ndk/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/arm-linux-androideabi-ld',
+    '--AR=' + ndkbin + 'arm-linux-androideabi-ar',
+    '--CC=' + ndkbin + 'arm-linux-androideabi-gcc',
+    '--CFLAGS=--sysroot=' + ndkroot + 'platforms/android-8/arch-arm',
+    '--CPP=' + ndkbin + 'arm-linux-androideabi-cpp',
+    '--CPPFLAGS=--sysroot=' + ndkroot + 'platforms/android-8/arch-arm',
+    '--CXX=' + ndkbin + 'arm-linux-androideabi-g++',
+    '--CXXFLAGS=--sysroot=' + ndkroot + 'platforms/android-8/arch-arm -fsigned-char -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -fdata-sections -ffunction-sections -fPIC -Wno-psabi -frtti -fexceptions -mthumb -O3 -fomit-frame-pointer -DNDEBUG -fPIC -isystem ' + ndkroot + 'platforms/android-8/arch-arm/usr/include -isystem ' + ndkroot + 'sources/cxx-stl/gnu-libstdc++/4.6/include -isystem ' + ndkroot + 'sources/cxx-stl/gnu-libstdc++/4.6/libs/armeabi-v7a/include -lstdc++',
+    '--LDFLAGS= -L' + ndklibs + 'armeabi-v7a -L' + ndklibs2 + ' -lm',
+    '--LD_SHARED=' + ndkbin + 'arm-linux-androideabi-ld',
     '--download-blacs=0',
     '--download-mumps=0',
     '--download-parmetis=0',
@@ -34,18 +39,18 @@ if __name__ == '__main__':
     '--known-sizeof-short=2',
     '--known-sizeof-size_t=8',
     '--known-sizeof-void-p=8',
-    '--with-blas-lib=/home/maxime/Stage/petsc-3.3-p6/externalpackages/f2cblaslapack-3.1.1.q/libf2cblas.so',
+    '--with-blas-lib=' + externallibs + 'libf2cblas.so',
     '--with-clanguage=cxx',
     '--with-cmake=1',
     '--with-debugging=0',
     '--with-fc=0',
-    '--with-lapack-lib=/home/maxime/Stage/petsc-3.3-p6/externalpackages/f2clapacklapack-3.1.1.q/libf2clapack.so',
+    '--with-lapack-lib=' + externallibs + 'libf2clapack.so',
     '--with-mpi=0',
     '--with-shared-libraries=1',
     '--with-x=0',
-    '-I/opt/android-ndk/sources/cxx-stl/gnu-libstdc++/include/',
-    '-I/opt/android-ndk/sources/cxx-stl/gnu-libstdc++/include/backward',
-    '-I/opt/android-ndk/sources/cxx-stl/gnu-libstdc++/libs/armeabi/include',
+    '-I' + ndkroot + 'sources/cxx-stl/gnu-libstdc++/include/',
+    '-I' + ndkroot + 'sources/cxx-stl/gnu-libstdc++/include/backward',
+    '-I' + ndkroot + 'sources/cxx-stl/gnu-libstdc++/libs/armeabi/include',
     '-lstdc++',
     '-with-batch=1',
     'PETSC_ARCH=armv7-android-linux',
diff --git a/contrib/mobile/utils/onelab_android_build.sh b/contrib/mobile/utils/onelab_android_build.sh
index 3a8594680b7e6fa07f2cd57760459d06c3b721a5..a8c64b06ddd538df1282745ac93d3ba8023986fe 100755
--- a/contrib/mobile/utils/onelab_android_build.sh
+++ b/contrib/mobile/utils/onelab_android_build.sh
@@ -49,7 +49,7 @@ if [ ! -d "$getdp_svn/build_android" ] || [ ! -f "$getdp_svn/build_android/CMake
   mkdir $getdp_svn/build_android
 fi
 cd $getdp_svn/build_android
-PETSC_DIR= PETSC_ARCH= SLEPC_DIR= cmake $cmake_default -DENABLE_BLAS_LAPACK=1 -DENABLE_BUILD_SHARED=1 -DENABLE_GMSH=1 -DENABLE_LEGACY=1 -DENABLE_PETSC=1 -DPETSC_INC="$petsc_lib/Headers;$petsc_lib/Headers/mpiuni" -DPETSC_LIBS="$petsc_lib/libpetsc.so" -DENABLE_SLEPC=1 -DSLEPC_INC="$slepc_lib/Headers/" -DSLEPC_LIB="$slepc_lib/libslepc.a" -DGMSH_INC="$gmsh_svn/build_android/Headers/" -DGMSH_LIB="$gmsh_svn/build_android/libs/libGmsh.so" -DBLAS_LAPACK_LIBRARIES="$petsc_lib/libf2cblas.so;$petsc_lib/libf2clapack.so" ..
+PETSC_DIR= PETSC_ARCH= SLEPC_DIR= cmake $cmake_default -DENABLE_BLAS_LAPACK=1 -DENABLE_BUILD_SHARED=1 -DENABLE_GMSH=1 -DENABLE_LEGACY=1 -DENABLE_PETSC=1 -DPETSC_INC="$petsc_lib/Headers;$petsc_lib/Headers/mpiuni" -DPETSC_LIBS="$petsc_lib/libpetsc.so" -DENABLE_SLEPC=1 -DSLEPC_INC="$slepc_lib/Headers/" -DSLEPC_LIB="$slepc_lib/libslepc.so" -DGMSH_INC="$gmsh_svn/build_android/Headers/" -DGMSH_LIB="$gmsh_svn/build_android/libs/libGmsh.so" -DBLAS_LAPACK_LIBRARIES="$petsc_lib/libf2cblas.so;$petsc_lib/libf2clapack.so" ..
 check
 make androidGetdp -j$cmake_thread
 check
@@ -64,7 +64,7 @@ cd $gmsh_svn/contrib/mobile/build_android
 cmake $cmake_default \
       -DCMAKE_INCLUDE_PATH="$getdp_svn/" \
       -DBLAS_LIB="$petsc_lib/libf2cblas.so" -DLAPACK_LIB="$petsc_lib/libf2clapack.so" \
-      -DPETSC_LIB="$petsc_lib/libpetsc.so" \
+      -DPETSC_LIB="$petsc_lib/libpetsc.so" -DSLEPC_LIB="$slepc_lib/libslepc.so" \
       -DGMSH_INC="$gmsh_svn/build_android/Headers" -DGMSH_LIB="$gmsh_svn/build_android/libs/libGmsh.so" \
       -DBENCHMARKSDIR="$getdp_svn/" \
       -DGETDP_INC="$getdp_svn/build_android/Headers" -DGETDP_LIB="$getdp_svn/build_android/libs/libGetDP.so" ..