android - 安装 Python-For-Android Linux Ubuntu,构建错误

标签 android linux installation kivy

我试图构建一个测试项目只是为了查看安装是否有效,但我几乎立即收到此错误......

/home/kivy/Android/sdk/platform-tools/tools/android

我已经安装了 Android Studio 并运行了更新。我安装了所需的 14(android 4.0) 工具。我下载了 NDK,即使 Android Studio 创建了一个包含工具、平台、平台工具等文件夹的新 Android 文件夹,我仍然下载了独立文件夹 Android-Linux (r24.4.1)。

Android-Linux 和 NDK 坐在家里/documents/sdk_ndk/...

Android Studio创建的Android文件夹就在home/Android

Android Studio 本身带有 NDK 和 Android-Linux 文件夹。

.bashrc 有...

            export ANDROIDSDK=$HOME/Documents/sdk_ndk/android-sdk-r24.4.1
            export ANDROIDNDK=$HOME/Documents/sdk_ndk/android-ndk-r13b
            export ANDROIDAPI="14"
            export ANDROIDNDKVER="r13b"

我什至试过了....

            export ANDROIDSDK=$HOME/Android/sdk
            export ANDROIDNDK=$HOME/Documents/sdk_ndk/android-ndk-r13b
            export ANDROIDAPI="14"
            export ANDROIDNDKVER="r13b"

构建命令是....

            p4a apk --private ~/Desktop/testapp --package=org.example.myapp --name "testapp" --version 0.1 --bootstrap=sdl2 --requirements=python2,kivy

当我设置这个...

            export ANDROIDSDK=$HOME/Documents/sdk_ndk/android-sdk-r24.4.1

未找到 API 目标 14。

当我设置这个...

export ANDROIDSDK=$HOME/Android/sdk

我没有收到 api 错误,但收到路径错误。

            not found   /home/kivy/Android/sdk/platform-tools/tools/android

我什至试过...

            export ANDROIDSDK=$HOME/Android/sdk/tools
            export ANDROIDSDK=$HOME/Android/sdk/platform-tools

--------更新--------------------

我在路径周围添加了'"'.....

            export ANDROIDSDK="$Home/Documents/sdk_ndk/android-sdk-r24.4.1"
            #export ANDROIDSDK="$Home/Android/sdk"
            export ANDROIDNDK="$Home/Documents/sdk_ndk/android-ndk-r13b"
            export ANDROIDAPI="14"
            export ANDROIDNDKVER="r13b"

现在收到错误提示找不到/tools/android。这很奇怪,因为在 tools 文件夹中有一个 Android 文件。它没有 .sh 扩展名,但它在那里。

这是整个终端输出......

            kivy@kivy-VirtualBox:~$ p4a apk --private ~/Desktop/testapp --package=org.urchatty.com --name "testapp" --version 0.1 --bootstrap=sd12 --requirements=python2,kivy
            [INFO]:    This python-for-android revamp is an experimental alpha release!
            [INFO]:    It should work (mostly), but you may experience missing features or bugs.
            [INFO]:    Will compile for the following archs: armeabi
            [INFO]:    Found Android API target in $ANDROIDAPI
            Traceback (most recent call last):
              File "/usr/local/bin/p4a", line 9, in <module>
                load_entry_point('python-for-android==0.4', 'console_scripts', 'p4a')()
              File "/usr/local/lib/python2.7/dist-packages/pythonforandroid/toolchain.py", line 754, in main
                ToolchainCL()
              File "/usr/local/lib/python2.7/dist-packages/pythonforandroid/toolchain.py", line 343, in __init__
                getattr(self, command_method_name)(unknown)
              File "/usr/local/lib/python2.7/dist-packages/pythonforandroid/toolchain.py", line 87, in wrapper_func
                user_ndk_ver=self.ndk_version)
              File "/usr/local/lib/python2.7/dist-packages/pythonforandroid/build.py", line 226, in prepare_build_environment
                android = sh.Command(join(sdk_dir, 'tools', 'android'))
              File "/usr/local/lib/python2.7/dist-packages/sh.py", line 1029, in __init__
                raise CommandNotFound(path)
            sh.CommandNotFound: /Documents/sdk_ndk/android-sdk-r24.4.1/tools/android
            kivy@kivy-VirtualBox:~$ 

--------更新------------------------

似乎我在 bashrc 中的路径必须写成....“/home/kivy/....”。在另一个错误击中我之前我没走多远....

            kivy@kivy-VirtualBox:~$ p4a apk --private $HOME/code/myapp --package=org.example.myapp --name "My application" --version 0.1 --bootstrap=sdl2 --requirements=python2,kivy
            [INFO]:    This python-for-android revamp is an experimental alpha release!
            [INFO]:    It should work (mostly), but you may experience missing features or bugs.
            [INFO]:    Will compile for the following archs: armeabi
            [INFO]:    Found Android API target in $ANDROIDAPI
            [INFO]:    Available Android APIs are (4, 19)
            [INFO]:    Requested API target 19 is available, continuing.
            [INFO]:    Found NDK dir in $ANDROIDNDK
            [INFO]:    Got NDK version from $ANDROIDNDKVER
            [INFO]:    Using Google NDK r13b
            [INFO]:    Found virtualenv at /usr/local/bin/virtualenv
            [WARNING]: ndk_platform doesn't exist: /home.kivy/Documents/android-ndk-r13b/platforms/android-19/arch-arm
            [WARNING]: Could not find toolchain subdirectory!
            [WARNING]: Could not find any toolchain for arm-linux-androideabi!
            [WARNING]: Missing executable: autoconf is not installed
            [WARNING]: Missing executable: automake is not installed
            [WARNING]: Missing executable: libtoolize is not installed
            [ERROR]:   python-for-android cannot continue; aborting
            kivy@kivy-VirtualBox:~$ 

最佳答案

EL3PHANTEN 的回答带来了不同。

           # $ANDROIDSDK/tools/android update sdk --no-ui --filter 2,3,15

使用终端而不是管理器似乎有所帮助。 SDK下载的文件其实比较少。使用 SDK 管理器 UI,它们要大得多。

另一个技巧是在 bashrc 中。路径只能以“/”开头。

           "/home/kivy/Documents/...."

最后,p4a 正在做它的事情。 Kivy 网站真的应该更新它的文档以包含 EL3PHANTEN 的目的。此外,文档中使用的路径样式...

           export ANDROIDSDK="$HOME/Documents/android-sdk-21"
           export ANDROIDNDK="$HOME/Documents/android-ndk-r10e"
           export ANDROIDAPI="14"  # Minimum API version your application require
           export ANDROIDNDKVER="r10e"  # Version of the NDK you installed

如果出于某种原因,那不会削减。如果我早点从 EL3PHANTEN 获得帮助,而不是像现在一样在 Kivy 网站上做所有事情,我本可以节省大量带宽和时间。

我现在唯一的想法是,接下来我会遇到什么错误?显然,关于这些东西的文档不是 100%。

关于android - 安装 Python-For-Android Linux Ubuntu,构建错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41033549/

相关文章:

java - Android 通过单击不适用于 Galaxy 5 的按钮调用电话

java - 每天特定时间通知不通知

android - 如何使用数据类中的 Glide 绑定(bind) RecyclerView 图像

c - C 中的 Posix 正则表达式

linux - NOHZ : local_softirq_pending 100

linux - 如何在 ubuntu 11.10 中安装 gcc-4.3?

javascript - 如何检查android浏览器中的URL是否包含给定的字符串?

linux - 当我(root)执行 "usermod -G sudo chauncey"时,它说 "sudo group doesn' t存在”

localization - 安装程序属性选项卡下的 WiX 本地化乱码

php - Google Cloud SDK 安装程序无法在 Windows 上完成组件安装