Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Studio中c库的gradle构建失败_Android_Git_Android Studio_Gradle_Android Ndk - Fatal编程技术网

Android Studio中c库的gradle构建失败

Android Studio中c库的gradle构建失败,android,git,android-studio,gradle,android-ndk,Android,Git,Android Studio,Gradle,Android Ndk,首先,我要说我对Gradle、Android Studio和Git都是新手。我们刚刚从Eclipse和SVN迁移到这些技术,在运行Android项目时遇到了一些问题。我们正在Mac上开发。我从另一个团队继承了这个项目,不确定他们为什么选择做某些事情。 [不幸的是,我不得不在整个截图中审查项目名称和用户。] 我们正在使用c ogg库在Android应用程序中录制音频文件 我们收到的错误是: 我们已经找到了和的链接,但我们无法让它们中的任何一个正常工作 我们不确定该项目是否设置正确,因为似乎有很多

首先,我要说我对Gradle、Android Studio和Git都是新手。我们刚刚从Eclipse和SVN迁移到这些技术,在运行Android项目时遇到了一些问题。我们正在Mac上开发。我从另一个团队继承了这个项目,不确定他们为什么选择做某些事情。 [不幸的是,我不得不在整个截图中审查项目名称和用户。]

我们正在使用c ogg库在Android应用程序中录制音频文件

我们收到的错误是:

我们已经找到了和的链接,但我们无法让它们中的任何一个正常工作

我们不确定该项目是否设置正确,因为似乎有很多Android.mk文件漂浮在周围

从上面的问题链接来看,我们似乎需要强迫Gradle不要用自己的Android.mk文件覆盖我们的Android.mk文件,但这些建议似乎只会让我们进一步陷入困境

有人能给我们指出正确的方向吗

jni/Android.mk

LOCAL_PATH := $(call my-dir)

LOCAL_C_INCLUDE := $(LOCAL_PATH)/include

include $(addprefix $(LOCAL_PATH)/, $(addsuffix /Android.mk, \
    libogg \
    libvorbis \
    libvorbis-jni \
))
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := libogg
LOCAL_CFLAGS += -I$(LOCAL_PATH)/../include -ffast-math -fsigned-char
ifeq ($(TARGET_ARCH),arm)
    LOCAL_CFLAGS += -march=armv6 -marm -mfloat-abi=softfp -mfpu=vfp
endif


LOCAL_SRC_FILES := \
    bitwise.c \
    framing.c

include $(BUILD_SHARED_LIBRARY)
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := vorbis-jni
LOCAL_CFLAGS += -I$(LOCAL_PATH)/../include -fsigned-char
ifeq ($(TARGET_ARCH),arm)
    LOCAL_CFLAGS += -march=armv6 -marm -mfloat-abi=softfp -mfpu=vfp
endif

LOCAL_SHARED_LIBRARIES := libogg libvorbis

LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog

LOCAL_SRC_FILES := \
    com_*****_android_audio_VorbisEncoder.c

include $(BUILD_SHARED_LIBRARY)
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := libvorbis
LOCAL_CFLAGS += -I$(LOCAL_PATH)/../include -ffast-math -fsigned-char
ifeq ($(TARGET_ARCH),arm)
    LOCAL_CFLAGS += -march=armv6 -marm -mfloat-abi=softfp -mfpu=vfp
endif
LOCAL_SHARED_LIBRARIES := libogg

LOCAL_SRC_FILES := \
    mdct.c      \
    smallft.c   \
    block.c     \
    envelope.c  \
    window.c    \
    lsp.c       \
    lpc.c       \
    analysis.c  \
    synthesis.c \
    psy.c       \
    info.c      \
    floor1.c    \
    floor0.c    \
    res0.c      \
    mapping0.c  \
    registry.c  \
    codebook.c  \
    sharedbook.c    \
    lookup.c    \
    bitrate.c   \
    vorbisfile.c    \
    vorbisenc.c

include $(BUILD_SHARED_LIBRARY)
jni/libogg/Android.mk

LOCAL_PATH := $(call my-dir)

LOCAL_C_INCLUDE := $(LOCAL_PATH)/include

include $(addprefix $(LOCAL_PATH)/, $(addsuffix /Android.mk, \
    libogg \
    libvorbis \
    libvorbis-jni \
))
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := libogg
LOCAL_CFLAGS += -I$(LOCAL_PATH)/../include -ffast-math -fsigned-char
ifeq ($(TARGET_ARCH),arm)
    LOCAL_CFLAGS += -march=armv6 -marm -mfloat-abi=softfp -mfpu=vfp
endif


LOCAL_SRC_FILES := \
    bitwise.c \
    framing.c

include $(BUILD_SHARED_LIBRARY)
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := vorbis-jni
LOCAL_CFLAGS += -I$(LOCAL_PATH)/../include -fsigned-char
ifeq ($(TARGET_ARCH),arm)
    LOCAL_CFLAGS += -march=armv6 -marm -mfloat-abi=softfp -mfpu=vfp
endif

LOCAL_SHARED_LIBRARIES := libogg libvorbis

LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog

LOCAL_SRC_FILES := \
    com_*****_android_audio_VorbisEncoder.c

include $(BUILD_SHARED_LIBRARY)
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := libvorbis
LOCAL_CFLAGS += -I$(LOCAL_PATH)/../include -ffast-math -fsigned-char
ifeq ($(TARGET_ARCH),arm)
    LOCAL_CFLAGS += -march=armv6 -marm -mfloat-abi=softfp -mfpu=vfp
endif
LOCAL_SHARED_LIBRARIES := libogg

LOCAL_SRC_FILES := \
    mdct.c      \
    smallft.c   \
    block.c     \
    envelope.c  \
    window.c    \
    lsp.c       \
    lpc.c       \
    analysis.c  \
    synthesis.c \
    psy.c       \
    info.c      \
    floor1.c    \
    floor0.c    \
    res0.c      \
    mapping0.c  \
    registry.c  \
    codebook.c  \
    sharedbook.c    \
    lookup.c    \
    bitrate.c   \
    vorbisfile.c    \
    vorbisenc.c

include $(BUILD_SHARED_LIBRARY)
jni/libvorbis-jni/Android.mk

LOCAL_PATH := $(call my-dir)

LOCAL_C_INCLUDE := $(LOCAL_PATH)/include

include $(addprefix $(LOCAL_PATH)/, $(addsuffix /Android.mk, \
    libogg \
    libvorbis \
    libvorbis-jni \
))
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := libogg
LOCAL_CFLAGS += -I$(LOCAL_PATH)/../include -ffast-math -fsigned-char
ifeq ($(TARGET_ARCH),arm)
    LOCAL_CFLAGS += -march=armv6 -marm -mfloat-abi=softfp -mfpu=vfp
endif


LOCAL_SRC_FILES := \
    bitwise.c \
    framing.c

include $(BUILD_SHARED_LIBRARY)
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := vorbis-jni
LOCAL_CFLAGS += -I$(LOCAL_PATH)/../include -fsigned-char
ifeq ($(TARGET_ARCH),arm)
    LOCAL_CFLAGS += -march=armv6 -marm -mfloat-abi=softfp -mfpu=vfp
endif

LOCAL_SHARED_LIBRARIES := libogg libvorbis

LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog

LOCAL_SRC_FILES := \
    com_*****_android_audio_VorbisEncoder.c

include $(BUILD_SHARED_LIBRARY)
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := libvorbis
LOCAL_CFLAGS += -I$(LOCAL_PATH)/../include -ffast-math -fsigned-char
ifeq ($(TARGET_ARCH),arm)
    LOCAL_CFLAGS += -march=armv6 -marm -mfloat-abi=softfp -mfpu=vfp
endif
LOCAL_SHARED_LIBRARIES := libogg

LOCAL_SRC_FILES := \
    mdct.c      \
    smallft.c   \
    block.c     \
    envelope.c  \
    window.c    \
    lsp.c       \
    lpc.c       \
    analysis.c  \
    synthesis.c \
    psy.c       \
    info.c      \
    floor1.c    \
    floor0.c    \
    res0.c      \
    mapping0.c  \
    registry.c  \
    codebook.c  \
    sharedbook.c    \
    lookup.c    \
    bitrate.c   \
    vorbisfile.c    \
    vorbisenc.c

include $(BUILD_SHARED_LIBRARY)
jni/libvorbis/Android.mk

LOCAL_PATH := $(call my-dir)

LOCAL_C_INCLUDE := $(LOCAL_PATH)/include

include $(addprefix $(LOCAL_PATH)/, $(addsuffix /Android.mk, \
    libogg \
    libvorbis \
    libvorbis-jni \
))
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := libogg
LOCAL_CFLAGS += -I$(LOCAL_PATH)/../include -ffast-math -fsigned-char
ifeq ($(TARGET_ARCH),arm)
    LOCAL_CFLAGS += -march=armv6 -marm -mfloat-abi=softfp -mfpu=vfp
endif


LOCAL_SRC_FILES := \
    bitwise.c \
    framing.c

include $(BUILD_SHARED_LIBRARY)
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := vorbis-jni
LOCAL_CFLAGS += -I$(LOCAL_PATH)/../include -fsigned-char
ifeq ($(TARGET_ARCH),arm)
    LOCAL_CFLAGS += -march=armv6 -marm -mfloat-abi=softfp -mfpu=vfp
endif

LOCAL_SHARED_LIBRARIES := libogg libvorbis

LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog

LOCAL_SRC_FILES := \
    com_*****_android_audio_VorbisEncoder.c

include $(BUILD_SHARED_LIBRARY)
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := libvorbis
LOCAL_CFLAGS += -I$(LOCAL_PATH)/../include -ffast-math -fsigned-char
ifeq ($(TARGET_ARCH),arm)
    LOCAL_CFLAGS += -march=armv6 -marm -mfloat-abi=softfp -mfpu=vfp
endif
LOCAL_SHARED_LIBRARIES := libogg

LOCAL_SRC_FILES := \
    mdct.c      \
    smallft.c   \
    block.c     \
    envelope.c  \
    window.c    \
    lsp.c       \
    lpc.c       \
    analysis.c  \
    synthesis.c \
    psy.c       \
    info.c      \
    floor1.c    \
    floor0.c    \
    res0.c      \
    mapping0.c  \
    registry.c  \
    codebook.c  \
    sharedbook.c    \
    lookup.c    \
    bitrate.c   \
    vorbisfile.c    \
    vorbisenc.c

include $(BUILD_SHARED_LIBRARY)
项目的build.gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.2.3'
    }
}

allprojects {
    repositories {
        jcenter()
    }
}
项目模块的build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 21
    buildToolsVersion "22.0.1"

    defaultConfig {
        applicationId "com.*****.android.hud"
        minSdkVersion 14
        targetSdkVersion 18
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}

我真诚地希望你能暂时解决这个问题ago@AlexCohn,我们从来没有。相反,我重写了代码,使其不需要c library.auch。但我同意,如果可以从开发堆中删除一项附加技术,整个应用程序就会变得更健康。无论如何,如果你好奇的话,新的Android Studio(2.2+)完全支持NDK构建。