当前位置: 首页 > 知识库问答 >
问题:

GStreamer Android教程构建失败

闽经纬
2023-03-14

在Windows上运行GStreamer Android教程时,我遇到了很多问题。我是新的Android NDK,所以这可能是一个真正简单的问题,但我不知道如何解决它。

这些是我尝试生成项目时的生成错误消息

生成命令失败。

ifdef SYSROOT SYSROOT_GST_INC:=$(SYSROOT)SYSROOT_GST_LINK:=$(SYSROOT)

else ifdef SYSROOT_INC$(call assert defined,SYSROOT_LINK)ifdef SYSROOT_LINK SYSROOT_GST_INC:=$(SYSROOT_INC)SYSROOT_GST_LINK:=$(SYSROOT_LINK)endif else SYSROOT_GST_INC:=$(NDK_PLATFORMS_ROOT)/$(target_platforms)/arch-$(TARGET_ARCH)SYSROOT_GST_LINK:=$(SYSROOT_GST_INC)endif endif

我认为问题与错误消息中提到的SYS_ROOT有关,但我不知道“SYS_ROOT”或“ndk_project_path”是什么意思。

我已经将gstAndroidRoot添加到gradle.properties中,所以在构建时这不会是一个问题。

共有1个答案

朱令
2023-03-14

对于Windows 10,Android Studio 3.5。这对我起作用了。

>

  • 从这里下载整个gstreamer android studio教程目录。

    打开Android Studio->打开现有的Android Studio项目

    右键单击local.properties附近。右键单击->文件->新建->文件

    创建一个名为gradle.properties的新文件

    在新的gradle.properties文件中,复制并粘贴下面的代码。

    # gstAndroidRoot can be set to point to the unpacked GStreamer android top-level directory
    # containing each architecture in subdirectories, or else set the GSTREAMER_ROOT_ANDROID
    # environment variable to that location
    gstAndroidRoot=/gstreamer_android_binaries
    

    现在我们需要设置NDK目录。确保下载并在SDK工具下启用了NDK。

    这将下载最新的NDK版本。然而,gstreamer目前不会使用最新的NDK进行构建。我们需要从这里下载NDK修订版18B。如果不使用NDK版本18,可能会出现错误android NDK:Assertion failure:SYSROOT_LINK不定义。停下来。打开文件

    解压缩下载的NDK18B目录。

    您现在应该在android\sdk\ndk中有两个文件夹。20.0.5594570(或最新版本)Android-NDK-R18B

    在android studio中,转到文件->项目结构

    在Android NDK location下指向NDK18目录。示例:C:\users\appdata\local\android\sdk\ndk\android-ndk-r18b

    连接一个有USB调试的电话,运行!

    如果你在手机上发现一个错误,说明它是针对较旧版本的Android的。回到Android Studio并切换到屏幕左侧的Android View。在gradle scripts下,选择build.gradle以获得相应的教程。更改compilesdkversion 29minsdkversion 15targetsdkversion 29

  •  类似资料:
    • 我是gradle的新手,所以我遵循以下教程:https://spring.io/guides/gs/gradle/#scratch 当我运行gradle任务时,我可以看到在使用apply plugin:'java'创建build.gradle之后显示的java任务,但是当我使用命令gradle build时,我得到以下错误。 有什么想法吗?

    • 失败:生成失败,出现异常。 出了什么问题:任务'执行失败:app: check DebugAarMetadata'。 发生多个任务操作失败:执行com时发生故障。Android建筑格雷德尔。内部的任务。CheckAarMetadataWorkAction > 尝试:使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获得更多日志输出。运行--扫描以获得完整

    • 我尝试使用现有的工作项目进行javascript构建,但它给我一个如下所示的构建错误,有什么想法吗? 该项目适用于Android和IOS,我在没有任何设置更改或其他任何更改的情况下进行了构建 全栈跟踪:

    • 我试着鼓包grpc ***跳过codegen的构建和proto文件的编译,因为SkipCodeGen=true 失败:生成失败,出现异常。 > 其中:构建文件'/home/susi/grpc-java/Build.gradle'行:31

    • 我已经下载了Android SDK工具。解压缩文件,然后在目录工具中运行这些命令 生成失败/home/live/devel/android/tools/myapp/BUILD.xml:90:执行此行时出现以下错误:/home/live/devel/android/tools/ant/BUILD.xml:108:taskdef使用类加载器AntClassLoader找不到类com.android.a

    • [错误]D:...\spark-test\java-gett-start\src\main\java\main.java:[73,35]错误:源代码1.5中不支持lambda表达式 这是一个heroku示例java项目,在System.properties文件中设置了java版本:java.runtime.version=1.8 具体行如下: