Android 如何修复NDK生成错误:pread失败:是目录吗?
我在android上构建一些本机代码时出现以下错误:Android 如何修复NDK生成错误:pread失败:是目录吗?,android,android-ndk,Android,Android Ndk,我在android上构建一些本机代码时出现以下错误: /Users/jerikc/Library/Android/android-ndk-r10d/toolchains/arm-linux-androideabi-4.8/prebuilt/darwin-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/ld: fatal error: /Users/jerikc/workdi
/Users/jerikc/Library/Android/android-ndk-r10d/toolchains/arm-linux-androideabi-4.8/prebuilt/darwin-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/ld: fatal error: /Users/jerikc/workdir/workspace/projuect: pread failed: Is a directory
collect2: error: ld returned 1 exit status
ndk版本为:r10d
Android.mk:
LOCAL_MODULE := libpng
LOCAL_SRC_FILES += \
../jniLibs/$(TARGET_ARCH_ABI)/libpng.a
LOCAL_EXPORT_C_INCLUDES += \
libpng
include $(PREBUILT_STATIC_LIBRARY)
LOCAL_MODULE := libjpeg
LOCAL_SRC_FILES += \
../jniLibs/$(TARGET_ARCH_ABI)/libjpeg.a
LOCAL_EXPORT_C_INCLUDES += \
libjpeg
include $(PREBUILT_STATIC_LIBRARY)
LOCAL_MODULE := libcrypto
LOCAL_SRC_FILES += \
../jniLibs/$(TARGET_ARCH_ABI)/libcrypto.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := processing
LOCAL_SRC_FILES += filter_jni.c \
control.c
LOCAL_CFLAGS := -g -O3 -ffast-math
LOCAL_LDLIBS := -llog -lm -lz
LOCAL_STATIC_LIBRARIES += libpng libjpeg libcrypto
include $(BUILD_SHARED_LIBRARY)
您必须使用$(CLEAR_VARS)来清理您的局部变量,make现在正在处理这些变量
以下是链接,您可以在其中找到一些关于它的有用信息:
我想,以下版本将解决您的问题。我现在没有系统来检查它
include $(CLEAR_VARS)
LOCAL_MODULE := libpng
LOCAL_SRC_FILES += \
../jniLibs/$(TARGET_ARCH_ABI)/libpng.a
LOCAL_EXPORT_C_INCLUDES += \
libpng
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := libjpeg
LOCAL_SRC_FILES += \
../jniLibs/$(TARGET_ARCH_ABI)/libjpeg.a
LOCAL_EXPORT_C_INCLUDES += \
libjpeg
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := libcrypto
LOCAL_SRC_FILES += \
../jniLibs/$(TARGET_ARCH_ABI)/libcrypto.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := processing
LOCAL_SRC_FILES += filter_jni.c \
control.c
LOCAL_CFLAGS := -g -O3 -ffast-math
LOCAL_LDLIBS := -llog -lm -lz
LOCAL_STATIC_LIBRARIES += libpng libjpeg libcrypto
include $(BUILD_SHARED_LIBRARY)
您必须使用$(CLEAR_VARS)来清理您的局部变量,make现在正在处理这些变量
以下是链接,您可以在其中找到一些关于它的有用信息:
我想,以下版本将解决您的问题。我现在没有系统来检查它
include $(CLEAR_VARS)
LOCAL_MODULE := libpng
LOCAL_SRC_FILES += \
../jniLibs/$(TARGET_ARCH_ABI)/libpng.a
LOCAL_EXPORT_C_INCLUDES += \
libpng
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := libjpeg
LOCAL_SRC_FILES += \
../jniLibs/$(TARGET_ARCH_ABI)/libjpeg.a
LOCAL_EXPORT_C_INCLUDES += \
libjpeg
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := libcrypto
LOCAL_SRC_FILES += \
../jniLibs/$(TARGET_ARCH_ABI)/libcrypto.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := processing
LOCAL_SRC_FILES += filter_jni.c \
control.c
LOCAL_CFLAGS := -g -O3 -ffast-math
LOCAL_LDLIBS := -llog -lm -lz
LOCAL_STATIC_LIBRARIES += libpng libjpeg libcrypto
include $(BUILD_SHARED_LIBRARY)