我正在尝试通过 ndk 构建 libiconv。我以前从未使用过 make 文件,所以我边走边学,并以此建议为起点:
https://groups.google.com/forum/#!msg/android-ndk/AS1nkxnk6m4/EQm09hD1tigJ
这是我的 Android.mk:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_CLFAGS := \
-Wno-multichar \
-D_ANDROID \
-DLIBDIR="c" \
-DBUILDING_LIBICONV \
-DIN_LIBRARY \
LOCAL_SRC_FILES := \
lib/iconv.c \
lib/relocatable.c \
libcharset/lib/localcharset.c
LOCAL_C_INCLUDES := \
$(LOCAL_PATH)/include/ \
$(LOCAL_PATH)/lib/ \
$(LOCAL_PATH)/libcharset/include/ \
LOCAL_MODULE := libiconv
include $(BUILD_STATIC_LIBRARY)
我遇到的问题是编译时不存在任何定义。 LIBDIR是到达localcharset.c时的第一个问题:
#ifndef LIBDIR
# include "configmake.h"
#endif
.
localcharset.c: In function 'get_charset_aliases':
localcharset.c:136:15: error: 'LIBDIR' undeclared (first use in this function)
localcharset.c:136:15: note: each undeclared identifier is reported only once
并且找不到configmake.h。我绕过了这个问题并遇到了更多定义相关的问题。基本上没有定义任何标志。任何人都知道我做错了什么或为什么它可能无法定义?