[PyQt] pyqtdeploy Demo cross-compiling -- setting up android sysroot

me at alandmoore.com me at alandmoore.com
Mon Feb 4 20:17:39 GMT 2019


Having successfully worked through compiling the pyqtdeploy demo for my 
own platform, I'm attempting to work through the process of 
cross-compiling for Android.

I'm currently stuck on getting the sysroot built.

My questions are:

1. in the included sysroot.json, the "qtdir" variable is set to 
"android_armv7".  I had installed the Android Qt binaries via the AUR 
using android-armv7a-eabi-qt5, and adjusted qtdir to 'armv7a-eabi' to 
match what was shipped in that package.  This may be what's messing me 
up, but these were the only Qt binaries for android I could find 
available for Arch.  Do I need to compile my own or should this work?

2. I'm specifying "android" as the build target, which begins building 
an android-32 sysroot.  How do I specify android 64 bit?  I tried 
"android-64", "android64", "android_arm64" and other variations, but the 
only one that works is "android".  Is there a list of valid values for 
--target?

3. My command looks like this:

ANDROID_NDK_PLATFORM=android-23 ANDROID_NDK_TOOLCHAIN_VERSION=4.9 
ANDROID_NDK_ROOT=/opt/android-ndk pyqtdeploy-sysroot --target android 
--source-dir /opt/android-libs --source-dir . --verbose sysroot.json

This starts to work but fails on the first build (openssl) with this 
error:

make[1]: arm-linux-androideabi-gcc: Command not found

That executable doesn't seem to exist in any package or sdk/ndk that 
I've downloaded.  Maybe this is a result of using the AUR package for Qt 
binaries.

Sorry if these are dumb questions, but I'm a bit lost at sea here having 
never done android development before.  If anyone can point me to land I 
would be grateful.

Regards,
Alan Moore




More information about the PyQt mailing list