簡體   English   中英

使用外部共享庫的android

[英]android using external shared library

我在Android應用程序中使用外部共享庫時遇到問題。 我創建了一個Android.mk文件,如下所示:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := MyApp
LOCAL_SRC_FILES := myexternallib.so
include $(PREBUILT_SHARED_LIBRARY)

使用ndk-build,我可以生成本地本機庫,並且可以在System.loadLibrary方法中使用該本機庫。 當我運行該應用程序時,出現錯誤java.lang.UnsatisfiedLinkError: Cannot load library: reloc_library[1486]: 2659 unknown reloc type 19 @ ( 4220)

在進一步的搜索中,我找到了一個建議使用android工具鏈構建共享庫的鏈接。 因此,我使用了其中一個工具鏈arm-eabi-gcc來構建我的源文件,該prebuilt/linux_x86/toolchain/arm-eabi-4.4.3/bin位於android源代碼的prebuilt/linux_x86/toolchain/arm-eabi-4.4.3/bin目錄中。 我收到錯誤arm-eabi-gcc: error trying to exec 'cc1': execvp: No such file or directory 我還注意到工具鏈文件夾沒有名為cc1的文件。

我是否遵循正確的程序? 還有其他方法可以在Android代碼中引用外部共享庫嗎?

的確,您應該使用Android工具鏈。

Android NDK隨附了有關使用其工具提示的詳細說明: http : //source-android.frandroid.com/ndk/docs/STANDALONE-TOOLCHAIN.html 如果您對此文檔有特定疑問,請隨時提出。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM