[mythtv] Problem with 32-bit android version
Mark Spieth
mark at digivation.com.au
Wed Oct 12 07:43:46 UTC 2022
On 11/10/2022 12:51 am, Peter Bennett wrote:
>
> On 10/8/22 22:16, Mark Spieth wrote:
>> I had to uninstall too.:)
>>
>> Which ndk, sdk, tools did you use last time.
>> ?
>> Set up a config with all of those settings.
>>
>> Yes very strange
>> _______________________________________________
>
> I set up a new config file firetv-4k, as follows
>
> export ANDROID_BUILD_TOOLS_REVISION=29.0.2
> export ANDROID_NDK=$ANDROID_SDK_ROOT/ndk/21.0.6113669
> export ANDROID_NATIVE_API_LEVEL=21
> export ANDROID_NDK_ROOT=$ANDROID_NDK
> export TARGET_SDK_VERSION=$ANDROID_NATIVE_API_LEVEL
> export ANDROID_API_VERSION=android-$ANDROID_NATIVE_API_LEVEL
> export ANDROID_MIN_SDK_VERSION=21
> export ARM64=0
> export MODE=arm
>
> Doing a make distclean, make libs, make apk gave me an apk that works
> on the firetv-4k :) !!!
>
> looking at the libs log, this time it did not find iconv built in. In
> fact it failed to find iconv at all.
>
> Performing Test Iconv_IS_BUILT_IN
> Performing Test Iconv_IS_BUILT_IN - Failed
> Could NOT find Iconv (missing: Iconv_LIBRARY)
>
> It looks like it built exiv2 without iconv support. This is probably
> not ideal.
>
> Other things report iconv is missing (e.g. flac)
>
> I don't understand what is going on with iconv.
>
> I suppose I should try again with ndk 21.0.6113669 and api version 25
> to isolate the problem to either ndk or api version.
Hi Peter
I just had a look at my build and the associated output is
-- Performing Test Iconv_IS_BUILT_IN
-- Performing Test Iconv_IS_BUILT_IN - Success
-- Found Iconv:
/home/mark/android/Sdk/ndk/21.4.7075529/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/lib/a
rm-linux-androideabi/libc.a
-- ICONV_INCLUDE_DIR :
-- ICONV_LIBRARIES :
/home/mark/android/Sdk/ndk/21.4.7075529/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/
lib/arm-linux-androideabi/libc.a
I still think its got something to do with pkgconfig.
Run this and see if libiconv is present
(INSTALLROOT=`pwd`/mythinstall; export PKG_CONFIG_DIR=; export
PKG_CONFIG_LIBDIR=$INSTALLROOT/lib/pkgconfig:$INSTALLROOT/share/pkgconfig:$QTBASE/lib/pkgconfig;
export PKG_CONFIG_SYSROOT_DIR=$INSTALLROOT; export
PKG_CONFIG_SYSROOT_DIR=; pkg-config --list-all; )
try this patch
diff --git a/android/makelibs.sh b/android/makelibs.sh
index f00d8bf67e..6da3421158 100755
--- a/android/makelibs.sh
+++ b/android/makelibs.sh
@@ -954,6 +954,10 @@ cmake -DCMAKE_TOOLCHAIN_FILE=$CMAKE_TOOLCHAIN_FILE \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_MAKE_PROGRAM=make \
-DCMAKE_PREFIX_PATH="$INSTALLROOT" \
+ -DCMAKE_INCLUDE_PATH="$INSTALLROOT/include" \
+ -DCMAKE_LIBRARY_PATH="$INSTALLROOT/lib" \
+ -DIconv_INCLUDE_DIR="$INSTALLROOT/include" \
+ -DIconv_LIBRARY="$INSTALLROOT/lib/libiconv.a" \
-DBUILD_SHARED_LIBS=ON \
-DEXIV2_ENABLE_XMP=OFF \
-DEXIV2_BUILD_SAMPLES=OFF \
This will use the built version.
Mark
More information about the mythtv-dev
mailing list