Skip to content

testapp_flask doesn't build with webview bootstrap, final bootstrap compiler options appear to have some sort of issue #1509

@ghost

Description

Versions

  • Python: 2.7
  • OS: Ubuntu / docker (p4a-build-space's p4a-py2-api19-ndkbundle environment)
  • Kivy: not used
  • Cython: latest on pypi (installed/upgraded with pip -U)

Description

The testapp_flask doesn't build with webview bootstrap: the final bootstrap compiler options appear to have some sort of issue, leading to Python.h not found even though development packages are installed.

Logs

Build command:
cd ~/testapp-webview-flask && p4a apk --arch=armeabi-v7a --name test --package com.example.test --version 1 --bootstrap webview --requirements=python2,flask --private .
(short-hand for reproduction: p4aspaces cmd p4a-py2-api19-ndkbundle testbuild_webview)

Output:
log.txt

Final output for your convenience:

�[1m[INFO]�[0m:    �[90m->�[0m running ndk-build...(and 37 more)�[0m
�[0m
           working: Android NDK: Found platform level in /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/project.properties. Setting APP_PLATFORM ...(and 183 more)�[0m
           working: Android NDK: WARNING:/root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/jni/application/src/Android.mk:main: non-system libraries in linker flag...(and 198 more)�[0m
           working: Android NDK:     This is likely to result in incorrect builds. Try using LOCAL_STA...(and 108 more)�[0m
           working: Android NDK:     or LOCAL_SHARED_LIBRARIES instead to list the library depend...(and 103 more)�[0m
           working: Android NDK:     c...(and 44 more)�[0m
           working: /ndk/build/core/build-binary.mk:688: Android NDK: Module main depends on undefined modules:...(and 119 more)�[0m
           working: rm -f /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/arm64-v8a/* /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/armeabi-v7a/* /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/x86/* /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2...(and 388 more)�[0m
           working: rm -f /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/arm64-v8a/gdbserver /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/armeabi-v7a/gdbserver /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/x86/gdbserver /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/x8...(and 420 more)�[0m
           working: rm -f /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/arm64-v8a/gdb.setup /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/armeabi-v7a/gdb.setup /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/x86/gdb.setup /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/x8...(and 420 more)�[0m
           working: [armeabi-v7a] Compile thumb  : ma...(and 59 more)�[0m
           working: /ndk/toolchains/llvm/prebuilt/linux-x86_64/bin/clang -MMD -MP -MF /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/obj/local/armeabi-v7a/objs/main/start.o.d -gcc-toolchain /ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64 -fpic -ffunction-sections -funwind-tables -fstack-protector-strong -Wno-invalid-command-line-argument -Wno-unused-command-line-argument -no-canonical-prefixes -g -target armv7-none-linux-androideabi19 -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -mthumb -Os -DNDEBUG  -I/root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/jni/application/src   -DANDROID -I/root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/jni/application/src/../../../../../other_builds/python2/armeabi-v7a/python2/python-install/include/python2.7 -D__ANDROID_API__=19 -Wa,--noexecstack -Wformat -Werror=format-security  --sysroot /ndk/sysroot -isystem /ndk/sysroot/usr/include/arm-linux-androideabi -c  /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/jni/application/src/start.c -o /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/obj/local/armeabi-v7a/ob...(and 1231 more)�[0m
           working: /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/jni/application/src/start.c:3:10...(and 137 more)�[0m
           working:       'Python.h' f...(and 44 more)�[0m
           working: #inclu...(and 32 more)�[0m
           working:       ...(and 32 more)�[0m
           working: 1 err...(and 31 more)�[0m
           working: make: *** [/root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/obj/local/armeabi-v7a/objs/main/st...(and 150 more)Exception in thread background thread for pid 20573:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/threading.py", line 754, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/local/lib/python2.7/dist-packages/sh.py", line 1540, in wrap
    fn(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/sh.py", line 2459, in background_thread
    handle_exit_code(exit_code)
  File "/usr/local/lib/python2.7/dist-packages/sh.py", line 2157, in fn
    return self.command.handle_command_exit_code(exit_code)
  File "/usr/local/lib/python2.7/dist-packages/sh.py", line 815, in handle_command_exit_code
    raise exc
ErrorReturnCode_2: 

  RAN: /ndk/ndk-build V=1

  STDOUT:
Android NDK: Found platform level in /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/project.properties. Setting APP_PLATFORM to android-19.    
Android NDK: WARNING:/root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/jni/application/src/Android.mk:main: non-system libraries in linker flags: -lpython2.7    
Android NDK:     This is likely to result in incorrect builds. Try using LOCAL_STATIC_LIBRARIES    
Android NDK:     or LOCAL_SHARED_LIBRARIES instead to list the library dependencies of the    
Android NDK:     current module    
/ndk/build/core/build-binary.mk:688: Android NDK: Module main depends on undefined modules: python_shared    
rm -f /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/arm64-v8a/* /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/armeabi-v7a/* /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/x86/* /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/x86_64/*
rm -f /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/arm64-v8a/gdbserver /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/armeabi-v7a/gdbserver /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/x86/gdbserver /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/x86_64/gdbserver
rm -f /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/arm64-v8a/gdb.setup /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/armeabi-v7a/gdb.setup /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/x86/gdb.setup /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/x86_64/gdb.setup
[armeabi-v7a] Compile thumb  : main <= start.c
/ndk/toolchains/llvm/prebuilt/linux-x86_64/bin/clang -MMD -MP -MF /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/obj/local/armeabi-v7a/objs/main/start.o.d -gcc-toolchain /ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64 -fpic -ffunction-sections -funwind-tables -fstack-protector-strong -Wno-invalid-command-line-argument -Wno-unused-command-line-argument -no-canonical-prefixes -g -target armv7-none-linux-androideabi19 -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -mthumb -Os -DNDEBUG  -I/root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/jni/application/src   -DANDROID -I/root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/jni/application/src/../../../../../other_builds/python2/armeabi-v7a/python2/python-install/include/python2.7 -D__ANDROID_API__=19 -Wa,--noexecstack -Wformat -Werror=format-security  --sysroot /ndk/sysroot -isystem /ndk/sysroot/usr/include/arm-linux-androideabi -c  /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/jni/application/src/start.c -o /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/obj/local/armeabi-v7a/objs/main/start.o
/root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/jni/application/src/start.c:3:10: fatal error: 
      'Python.h' file not found
#include "Python.h"
         ^~~~~~~~~~
1 error generated.
make: *** [/root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/obj/local/armeabi-v7a/objs/main/start.o] Error 1


  STDERR:


�[0m
                        
Traceback (most recent call last):
  File "/usr/local/bin/p4a", line 11, in <module>
    load_entry_point('python-for-android==0.6.0', 'console_scripts', 'p4a')()
  File "/usr/local/lib/python2.7/dist-packages/pythonforandroid/toolchain.py", line 1031, in main
    ToolchainCL()
  File "/usr/local/lib/python2.7/dist-packages/pythonforandroid/toolchain.py", line 551, in __init__
    getattr(self, args.subparser_name.replace('-', '_'))(args)
  File "/usr/local/lib/python2.7/dist-packages/pythonforandroid/toolchain.py", line 149, in wrapper_func
    build_dist_from_args(ctx, dist, args)
  File "/usr/local/lib/python2.7/dist-packages/pythonforandroid/toolchain.py", line 189, in build_dist_from_args
    build_recipes(build_order, python_modules, ctx)
  File "/usr/local/lib/python2.7/dist-packages/pythonforandroid/build.py", line 643, in build_recipes
    recipe.build_arch(arch)
  File "/usr/local/lib/python2.7/dist-packages/pythonforandroid/recipes/genericndkbuild/__init__.py", line 30, in build_arch
    shprint(sh.ndk_build, "V=1", _env=env)
  File "/usr/local/lib/python2.7/dist-packages/pythonforandroid/logger.py", line 178, in shprint
    for line in output:
  File "/usr/local/lib/python2.7/dist-packages/sh.py", line 863, in next
    self.wait()
  File "/usr/local/lib/python2.7/dist-packages/sh.py", line 792, in wait
    self.handle_command_exit_code(exit_code)
  File "/usr/local/lib/python2.7/dist-packages/sh.py", line 815, in handle_command_exit_code
    raise exc
sh.ErrorReturnCode_2: 

  RAN: /ndk/ndk-build V=1

  STDOUT:
Android NDK: Found platform level in /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/project.properties. Setting APP_PLATFORM to android-19.    
Android NDK: WARNING:/root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/jni/application/src/Android.mk:main: non-system libraries in linker flags: -lpython2.7    
Android NDK:     This is likely to result in incorrect builds. Try using LOCAL_STATIC_LIBRARIES    
Android NDK:     or LOCAL_SHARED_LIBRARIES instead to list the library dependencies of the    
Android NDK:     current module    
/ndk/build/core/build-binary.mk:688: Android NDK: Module main depends on undefined modules: python_shared    
rm -f /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/arm64-v8a/* /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/armeabi-v7a/* /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/x86/* /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/x86_64/*
rm -f /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/arm64-v8a/gdbserver /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/armeabi-v7a/gdbserver /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/x86/gdbserver /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/x86_64/gdbserver
rm -f /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/arm64-v8a/gdb.setup /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/armeabi-v7a/gdb.setup /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/x86/gdb.setup /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/libs/x86_64/gdb.setup
[armeabi-v7a] Compile thumb  : main <= start.c
/ndk/toolchains/llvm/prebuilt/linux-x86_64/bin/clang -MMD -MP -MF /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/obj/local/armeabi-v7a/objs/main/start.o.d -gcc-toolchain /ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64 -fpic -ffunction-sections -funwind-tables -fstack-protector-strong -Wno-invalid-command-line-argument -Wno-unused-command-line-argument -no-canonical-prefixes -g -target armv7-none-linux-androideabi19 -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -mthumb -Os -DNDEBUG  -I/root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/jni/application/src   -DANDROID -I/root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/jni/application/src/../../../../../other_builds/python2/armeabi-v7a/python2/python-install/include/python2.7 -D__ANDROID_API__=19 -Wa,--noexecstack -Wformat -Werror=format-security  --sysroot /ndk/sysroot -isystem /ndk/sysroot/usr/include/arm-linux-androideabi -c  /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/jni/application/src/start.c -o /root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/obj/local/armeabi-v7a/objs/main/start.o
/root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/jni/application/src/start.c:3:10: fatal error: 
      'Python.h' file not found
#include "Python.h"
         ^~~~~~~~~~
1 error generated.
make: *** [/root/.local/share/python-for-android/build/bootstrap_builds/webview-python2/obj/local/armeabi-v7a/objs/main/start.o] Error 1


  STDERR:

Error response from daemon: Cannot kill container: p4atestenv-p4a-py2-api19-ndkbundle-5543582b0777464a9faec1e9e3cebef2: Container aa935ee4625887752d5f10aee34c0e11b7bdbe40c9322fd07238cf005ed988a8 is not running

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions