Android NDK:中止停止? [英] Android NDK: Aborting stop?

查看:795
本文介绍了Android NDK:中止停止?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在为ffmpeg工作。我已经成功编译ffmpeg-2.0.1
之后,我在我的NDK的源/ ffmpeg-2.0.1 / android / arm中的Android.mk文件作为

  LOCAL_PATH:= $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE:= libavcodec

LOCAL_SRC_FILES:= lib / libavcodec-55.so

LOCAL_EXPORT_C_INCLUDES:= $(LOCAL_PATH)/ include

include $(PREBUILT_SHARED_LIBRARY)

之后make android项目和android项目中的Android.mk文件是

  LOCAL_PATH:= $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE:= tutorial01
LOCAL_SRC_FILES:= tutorial01.c
LOCAL_LDLIBS:= -llog -ljnigraphics -lz
LOCAL_SHARED_LIBRARIES:= libavformat libavcodec libswscale libavutil

include $(BUILD_SHARED_LIBRARY)
$ import-module,ffmpeg-2.0.1 / android / arm)

但显示有问题

  *** Android NDK:Aborting。停止。 
android-ffmpeg-tutorial01line 45,外部位置:
/home/tech/Documents/roman10/ndk/android-ndk-r9c/build/core/prebuilt-library.mk
C / C ++问题

我的NDK是android-ndk-r9c,系统是ubuntu-13.04,



解决方案

=http://www.kandroid.org/ndk/docs/ANDROID-MK.html> Android.mk结构



需要更改 Android.mk 文件如下:

  LOCAL_PATH:= $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE:= ffmpeg
LOCAL_SRC_FILES:= libs / ffmpeg.so
include $(PREBUILT_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE:= final_ffmpeg
LOCAL_SRC_FILES:= ffmpeg.cpp
LOCAL_LDLIBS:= -L $ (sysroot)/ usr / lib -llog
LOCAL_PREBUILTS:= libs / ffmpeg.so
#libavformat libavcodec libswscale libavutil
include $(BUILD_SHARED_LIBRARY)
Android NDK:Aborting



  LOCAL_PATH:= $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE:= ffmpeg
LOCAL_SRC_FILES:= libs / ffmpeg.so
include $(PREBUILT_SHARED_LIBRARY)

include $ (CLEAR_VARS)
LOCAL_MODULE:= ffmpeg
LOCAL_SRC_FILES:= ffmpeg.cpp
LOCAL_SHARED_LIBRARIES:= ffmpeg
include $(BUILD_SHARED_LIBRARY)

LOCAL_MODULE 名称重复时, / em>

结果将帮助您:



这仍然是您需要调用C ++文件中的C ++函数Java文件


I am working on ffmpeg for android. I have successfully compile ffmpeg-2.0.1 after that I make Android.mk file in my NDK's sources/ffmpeg-2.0.1/android/arm as

      LOCAL_PATH:= $(call my-dir)

      include $(CLEAR_VARS)

      LOCAL_MODULE:= libavcodec

      LOCAL_SRC_FILES:= lib/libavcodec-55.so

       LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include

      include $(PREBUILT_SHARED_LIBRARY)

After that make android project and in android project Android.mk file is as

  LOCAL_PATH := $(call my-dir)

    include $(CLEAR_VARS)

   LOCAL_MODULE    := tutorial01
   LOCAL_SRC_FILES := tutorial01.c
   LOCAL_LDLIBS := -llog -ljnigraphics -lz 
   LOCAL_SHARED_LIBRARIES := libavformat libavcodec libswscale libavutil

   include $(BUILD_SHARED_LIBRARY)
    $(call import-module,ffmpeg-2.0.1/android/arm)

but showing a problem

 *** Android NDK: Aborting    .  Stop.
   android-ffmpeg-tutorial01line 45, external location: 
   /home/tech/Documents/roman10/ndk/android-ndk-r9c/build/core/prebuilt-library.mk
   C/C++ Problem

My NDK is android-ndk-r9c,system is ubuntu-13.04,please anyone guide me.

thanks in advance.

解决方案

See the Android.mk structure firstly.

Need change Android.mk file like this :

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE    := ffmpeg
LOCAL_SRC_FILES := libs/ffmpeg.so
include $(PREBUILT_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE    := final_ffmpeg
LOCAL_SRC_FILES := ffmpeg.cpp
LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog
LOCAL_PREBUILTS := libs/ffmpeg.so
#libavformat libavcodec libswscale libavutil
include $(BUILD_SHARED_LIBRARY)

p/s : I also get the Android NDK : Aborting problem as you when put data together like this :

LOCAL_PATH:= $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE:= ffmpeg
LOCAL_SRC_FILES:= libs/ffmpeg.so
include $(PREBUILT_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE    := ffmpeg
LOCAL_SRC_FILES := ffmpeg.cpp
LOCAL_SHARED_LIBRARIES := ffmpeg
include $(BUILD_SHARED_LIBRARY)

This problem happens when LOCAL_MODULE name is duplicated.

The result will help you :

It still be exactly when you need call the C++ function in C++ file from Java file.

这篇关于Android NDK:中止停止?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆