Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法链接Android上的freetype.a_Android_Android Ndk_Freetype - Fatal编程技术网

无法链接Android上的freetype.a

无法链接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

我尝试在带有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_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的交叉编译器。