From 33a633a6317d272ffd06320c92416644a367b186 Mon Sep 17 00:00:00 2001 From: est31 Date: Fri, 15 May 2015 05:02:19 +0200 Subject: Fix libgmp for Android Android terminated immediately after start since commit 181f7baa453c58d4070de7196fd74663110946a8 because library wasn't loaded, and libminetest.so required libgmp.so.10 instead of libgmp.so. The second issue has been solved by the linker flags. --- build/android/Makefile | 4 +++- build/android/src/net/minetest/minetest/MtNativeActivity.java | 6 ++++++ 2 files changed, 9 insertions(+), 1 deletion(-) (limited to 'build/android') diff --git a/build/android/Makefile b/build/android/Makefile index 898968bed..b11d73972 100644 --- a/build/android/Makefile +++ b/build/android/Makefile @@ -120,7 +120,7 @@ CURL_URL_HTTP = http://curl.haxx.se/download/curl-${CURL_VERSION}.tar.bz2 GMP_VERSION = 6.0.0 GMP_DIR = $(ROOT)/deps/gmp-$(GMP_VERSION) -GMP_LIB = $(GMP_DIR)/usr/lib/libgmp.la +GMP_LIB = $(GMP_DIR)/usr/lib/libgmp.so GMP_TIMESTAMP = $(GMP_DIR)/timestamp GMP_TIMESTAMP_INT = $(ROOT)/deps/gmp_timestamp GMP_URL_HTTP = https://gmplib.org/download/gmp/gmp-$(GMP_VERSION).tar.bz2 @@ -602,6 +602,8 @@ $(GMP_LIB): $(GMP_TIMESTAMP) export PATH="$${TOOLCHAIN}/bin:$${PATH}"; \ export CC=${CROSS_PREFIX}gcc; \ export CXX=${CROSS_PREFIX}g++; \ + export LIBGMP_LDFLAGS="-avoid-version"; \ + export LIBGMPXX_LDFLAGS="-avoid-version"; \ ./configure --disable-static --host=${TARGET_HOST} --prefix=/usr; \ $(MAKE) install DESTDIR=/${GMP_DIR} || exit 1; \ touch ${GMP_TIMESTAMP}; \ diff --git a/build/android/src/net/minetest/minetest/MtNativeActivity.java b/build/android/src/net/minetest/minetest/MtNativeActivity.java index 2bfcef93c..5c1f44d17 100644 --- a/build/android/src/net/minetest/minetest/MtNativeActivity.java +++ b/build/android/src/net/minetest/minetest/MtNativeActivity.java @@ -86,6 +86,12 @@ public class MtNativeActivity extends NativeActivity { System.loadLibrary("vorbis"); System.loadLibrary("ssl"); System.loadLibrary("crypto"); + System.loadLibrary("gmp"); + + // We don't have to load libminetest.so ourselves, + // but if we do, we get nicer logcat errors when + // loading fails. + System.loadLibrary("minetest"); } private int m_MessagReturnCode; -- cgit v1.2.3