Android ndk-build因dyld错误而失败

时间:2012-02-17 05:00:44

标签: android compilation native dyld

我正在做以下教程http://mobile.tutsplus.com/tutorials/android/ndk-tutorial/

我似乎无法正确编译。我收到以下错误:

dyld: unknown required load command 0x80000022
dyld: unknown required load command 0x80000022
Compile thumb  : ndk1 <= native.c
dyld: unknown required load command 0x80000022
make: *** [obj/local/armeabi/objs/ndk1/native.o] Trace/BPT trap

我正在运行Mac OS X 10.5.8。我正在使用Gnu Make 3.81。我正在使用随mac os x一起提供的awk。我正在使用android ndk r7b。

dyld错误似乎弹出了很多为10.6编译的代码,然后尝试在10.5.8机器上运行。

Android.mk make file:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_LDLIBS := -llog

LOCAL_MODULE := ndk1
LOCAL_SRC_FILES := native.c

include $(BUILD_SHARED_LIBRARY)

native.c文件:

#include <jni.h>
#include <string.h>
#include <android/log.h>

#define DEBUG_TAG "NDK_NDKtestActivity"

void Java_my_mumbo_jumbo_NDKtestActivity_helloLog(JNIEnv * env, jobject this, j\
string logThis)
{
  jboolean isCopy;
  const char * szLogThis = (*env)->GetStringUTFChars(env, logThis, &isCopy);
  __android_log_print(ANDROID_LOG_DEBUG, DEBUG_TAG, "NDK:LC: [%s]", szLogThis);
  (*env)->ReleaseStringUTFChars(env, logThis, szLogThis);
}

我可能没有在我的路径中包含一个安卓库吗?我只在我的路径中添加了android r7b文件夹,所以我可以找到ndk-build?

谢谢, 托马斯

2 个答案:

答案 0 :(得分:0)

Please look at this links.it may be helpfull..
http://psrdotcom.blogspot.in/2011/12/android-ndk-jni-windows-xp7-with-3264.html#!http://psrdotcom.blogspot.com/2011/12/android-ndk-jni-windows-xp7-with-3264.html
http://marakana.com/forums/android/examples/49.html
http://mindtherobot.com/blog/452/android-beginners-ndk-setup-step-by-step/

答案 1 :(得分:0)

您需要降级到NDK 6b,如下所示: https://ar.qualcomm.at/arforums/showthread.php?t=1590

瓦茨拉夫