NDK-在C文件中使用.a文件 [英] NDK-Use of .a file in C file
问题描述
我正在尝试在C代码中使用.a文件在Java中使用(抱歉,我的英语不好).我现在创建了一个名为libtest.a.
的静态库,当我包含该库中存在的文件时,由于没有此类文件或目录而给我错误.
我已将libtest.a
放在我的Android.mk
和Application.mk
所在的同一文件夹中
C代码:
I''m trying to use a .a file in my C code to use in Java (sorry for my bad English). I created myself a static library named libtest.a.
now when i include files present in that library in gives me error as no such file or directory.
i have put the libtest.a
in the same folder where my Android.mk
and Application.mk
resides
C-code:
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <jni.h>
#include <exp.h> //the header in libtest.a
这是我的makefile:
And this is my makefile:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := libtest
LOCAL_SRC_FILES := libtest.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := socket
LOCAL_SRC_FILES := source/interface.c source/file.c
LOCAL_LDFLAGS += libtest.a
include $(BUILD_SHARED_LIBRARY)
编译时,出现以下错误:
When I compile it, I get the following error:
error: exp.h: No such file or directory
我想使用没有代码的.a,所以我希望我足够清楚.
I want to use the .a without it''s code so I hope I''m clear enough.
推荐答案
(称为my-dir) 包括
(call my-dir) include
(CLEAR_VARS) LOCAL_MODULE:= libtest LOCAL_SRC_FILES:= libtest.a include
(CLEAR_VARS) LOCAL_MODULE := libtest LOCAL_SRC_FILES := libtest.a include
(PREBUILT_STATIC_LIBRARY) 包含
(PREBUILT_STATIC_LIBRARY) include
这篇关于NDK-在C文件中使用.a文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!