I have been trying to build Python 3.3.2 for android but I have run into a dead end. I might be doing something wrong.
Here is my buildscript:
# Unpack Python
tar xvjf Python-3.3.2.tar.bz2
cd Python-3.3.2
# Setup Android NDK vars
export NDK=/home/jakob/dev/android/android-ndk-r9
export CROSS_COMPILE=arm-linux-androideabi
export CC=${CROSS_COMPILE}-gcc
export CXX=${CROSS_COMPILE}-g++
export SYSROOT=$NDK/platforms/android-18/arch-arm
export PATH=$PATH:$NDK/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin/
# Create config.site file
echo 'ac_cv_file__dev_ptmx=no
ac_cv_file__dev_ptc=no' > config.site
# Configure
CONFIG_SITE=config.site ./configure --build=x86-unknown-linux-gnu --host=$CROSS_COMPILE --disable-ipv6 LDFLAGS="-Wl,--allow-shlib-undefined -L$SYSROOT/usr/lib" CFLAGS="-mandroid -fomit-frame-pointer --sysroot $SYSROOT"
# Build
make
Here is the output from make:
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Modules/python.o ./Modules/python.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Parser/acceler.o Parser/acceler.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Parser/grammar1.o Parser/grammar1.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Parser/listnode.o Parser/listnode.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Parser/node.o Parser/node.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Parser/parser.o Parser/parser.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Parser/bitset.o Parser/bitset.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Parser/metagrammar.o Parser/metagrammar.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Parser/firstsets.o Parser/firstsets.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Parser/grammar.o Parser/grammar.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Parser/pgen.o Parser/pgen.c
Parser/pgen.c: In function 'compile_atom':
Parser/pgen.c:282:9: warning: variable 'i' set but not used [-Wunused-but-set-variable]
int i;
^
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Parser/myreadline.o Parser/myreadline.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Parser/parsetok.o Parser/parsetok.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Parser/tokenizer.o Parser/tokenizer.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/abstract.o Objects/abstract.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/accu.o Objects/accu.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/boolobject.o Objects/boolobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/bytes_methods.o Objects/bytes_methods.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/bytearrayobject.o Objects/bytearrayobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/bytesobject.o Objects/bytesobject.c
Objects/bytesobject.c: In function 'PyBytes_FromFormatV':
Objects/bytesobject.c:277:25: warning: format '%zd' expects argument of type 'signed size_t', but argument 3 has type 'Py_ssize_t' [-Wformat=]
va_arg(vargs, Py_ssize_t));
^
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/cellobject.o Objects/cellobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/classobject.o Objects/classobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/codeobject.o Objects/codeobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/complexobject.o Objects/complexobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/descrobject.o Objects/descrobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/enumobject.o Objects/enumobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/exceptions.o Objects/exceptions.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/genobject.o Objects/genobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/fileobject.o Objects/fileobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/floatobject.o Objects/floatobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/frameobject.o Objects/frameobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/funcobject.o Objects/funcobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/iterobject.o Objects/iterobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/listobject.o Objects/listobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/longobject.o Objects/longobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/dictobject.o Objects/dictobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/memoryobject.o Objects/memoryobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/methodobject.o Objects/methodobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/moduleobject.o Objects/moduleobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/namespaceobject.o Objects/namespaceobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/object.o Objects/object.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/obmalloc.o Objects/obmalloc.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/capsule.o Objects/capsule.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/rangeobject.o Objects/rangeobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/setobject.o Objects/setobject.c
Objects/setobject.c: In function 'set_insert_key':
Objects/setobject.c:217:25: warning: typedef 'lookupfunc' locally defined but not used [-Wunused-local-typedefs]
typedef setentry *(*lookupfunc)(PySetObject *, PyObject *, Py_hash_t);
^
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/sliceobject.o Objects/sliceobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/structseq.o Objects/structseq.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/tupleobject.o Objects/tupleobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/typeobject.o Objects/typeobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/unicodeobject.o Objects/unicodeobject.c
Objects/unicodeobject.c: In function '_Py_ReleaseInternedUnicodeStrings':
Objects/unicodeobject.c:14301:13: warning: format '%zd' expects argument of type 'signed size_t', but argument 3 has type 'Py_ssize_t' [-Wformat=]
n);
^
Objects/unicodeobject.c:14327:13: warning: format '%zd' expects argument of type 'signed size_t', but argument 3 has type 'Py_ssize_t' [-Wformat=]
"mortal/immortal\n", mortal_size, immortal_size);
^
Objects/unicodeobject.c:14327:13: warning: format '%zd' expects argument of type 'signed size_t', but argument 4 has type 'Py_ssize_t' [-Wformat=]
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/unicodectype.o Objects/unicodectype.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Objects/weakrefobject.o Objects/weakrefobject.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Python/_warnings.o Python/_warnings.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Python/Python-ast.o Python/Python-ast.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Python/asdl.o Python/asdl.c
make Parser/pgen
make[1]: Entering directory `/home/jakob/dev/qt5/Python-3.3.2'
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Python/dynamic_annotations.o Python/dynamic_annotations.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Python/mysnprintf.o Python/mysnprintf.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Python/pyctype.o Python/pyctype.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Parser/tokenizer_pgen.o Parser/tokenizer_pgen.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Parser/printgrammar.o Parser/printgrammar.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Parser/parsetok_pgen.o Parser/parsetok_pgen.c
arm-linux-androideabi-gcc -c -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -mandroid -fomit-frame-pointer --sysroot /home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm -I. -IInclude -I./Include -DPy_BUILD_CORE -o Parser/pgenmain.o Parser/pgenmain.c
arm-linux-androideabi-gcc -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -Wl,--allow-shlib-undefined -L/home/jakob/dev/android/android-ndk-r9/platforms/android-18/arch-arm/usr/lib Parser/acceler.o Parser/grammar1.o Parser/listnode.o Parser/node.o Parser/parser.o Parser/bitset.o Parser/metagrammar.o Parser/firstsets.o Parser/grammar.o Parser/pgen.o Objects/obmalloc.o Python/dynamic_annotations.o Python/mysnprintf.o Python/pyctype.o Parser/tokenizer_pgen.o Parser/printgrammar.o Parser/parsetok_pgen.o Parser/pgenmain.o -ldl -o Parser/pgen
/home/jakob/dev/android/android-ndk-r9/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/ld: error: cannot open crtbegin_dynamic.o: No such file or directory
/home/jakob/dev/android/android-ndk-r9/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/ld: error: cannot open crtend_android.o: No such file or directory
collect2: error: ld returned 1 exit status
make[1]: *** [Parser/pgen] Error 1
make[1]: Leaving directory `/home/jakob/dev/qt5/Python-3.3.2'
make: *** [Include/graminit.h] Error 2
So everyhing looks nice until it starts using pgen, which by the way is build for ARM. So I don't know if it makes sense at all that it is called on the host system.
Please help.
Thanks Jakob Simon-Gaarde
FWIW I was able to get Python 3.5 on android via kivy/buildozer + crystax (place crystax in ~/.buildozer/crystax-ndk-10.3.2
)
Install Android Studio so you have adb
at the command line.
Python 3.5 in Ubuntu 18.04
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
sudo apt install python3.5
Get the latest and greatest buildozer (required for python3 in Fall 2018)
sudo -H pip install git+https://github.com/kivy/buildozer
Make a little testbed
mkdir py3android
cd py3android
mkdir src
src/main.py
from kivy.app import App
from kivy.uix.button import Button
class TestApp(App):
def build(self):
return Button(text='Hello World')
TestApp().run()
buildozer.spec (Run buildozer init
to create a skeleton first)
[app]
title = My App
package.name = myapp
package.domain = com.mycompany
source.dir = ./src
source.include_exts = py,png,jpg
source.include_patterns = img/
version = 0.1
requirements = python3crystax,kivy,git+git://github.com/wolfgangp/python-for-android
orientation = portrait
osx.python_version = 3
osx.kivy_version = 1.9.1
fullscreen = 0
android.ndk = 10.3.2
android.ndk_path = ~/.buildozer/crystax-ndk-10.3.2
android.entrypoint = org.renpy.android.PythonActivity
[buildozer]
log_level = 2
warn_on_root = 1
The git library wolfgangp/python-for-android
will be removed once this pull request is accepted, then it can be changed to android==master
Then cd py3android
, plug in your physical android device via USB (you can use emulators too btw) and simply run buildozer android debug run logcat | grep -C 50 Traceback
to see your app and print any tracebacks to the log.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With