无法链接Android上的freetype.a
我尝试在带有cocos2d-x的项目中使用freetype库。我构建了freetype并将其添加到项目中(如下所示)。在xcode中,它构建时没有错误。现在我尝试在android上使用它。我在freetype目录中创建了make文件:无法链接Android上的freetype.a,android,android-ndk,freetype,Android,Android Ndk,Freetype,我尝试在带有cocos2d-x的项目中使用freetype库。我构建了freetype并将其添加到项目中(如下所示)。在xcode中,它构建时没有错误。现在我尝试在android上使用它。我在freetype目录中创建了make文件: LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := freetype LOCAL_SRC_FILES := lib/libfreetype.a LOCAL_EXPORT_C_INC
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := freetype
LOCAL_SRC_FILES := lib/libfreetype.a
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include $(LOCAL_PATH)/include/freetype2
include $(PREBUILT_STATIC_LIBRARY)
并添加到主生成文件中
LOCAL_STATIC_LIBRARIES := freetype curl_static_prebuilt
...
$(call import-module,freetype)
链接期间出现错误:libfreetype.a:无法识别文件格式;作为链接器脚本处理
预构建:libfreetype.a是libfreetype。一个使用编译器编译的库,为ARM体系结构生成二进制文件?我想是的。我使用了android-ndk-r8b和以下命令:
/configure--host=arm-linux-androideabi--prefix=/freetype--without-zlib
make-j4
make-install-DESTDIR=$(pwd)为什么要运行这个命令?您应该将库构建为一个模块并运行ndk build。无论如何,我认为您正在构建libfreetype。一个与NDK中的编译器版本不同的库,NDK工具链中的链接器看到了这一点并阻塞了它。运行configuregnumake后,将使用路径中的默认编译器,而不是ARM的交叉编译器。