Bonjour,
j'ai un problème de compilation pour un projet Android dans lequel je dois utiliser 2 librairies C++, une étant donnée (le .so et les .h uniquement) et l'autre étant mes propres fichiers C++ (qui utilisent la première librairie).
Je vous montre le Android.mk et l'erreur que j'ai à l'exécution du programme sur le téléphone :
----------
Android.mk :
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := QCAR
LOCAL_SRC_FILES = ../../../Development/Android/vuforia-sdk-android-1-5-9/build/lib/$(TARGET_ARCH_ABI)/libQCAR.so
LOCAL_EXPORT_C_INCLUDES += $(LOCAL_PATH)/../../../Development/Android/vuforia-sdk-android-1-5-9/build/include/
include $(PREBUILT_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := ndkmain
LOCAL_LDLIBS += -llog
LOCAL_SHARED_LIBRARIES += QCAR
LOCAL_SRC_FILES += ndkmain.cpp
include $(BUILD_SHARED_LIBRARY)
----------
Et l'erreur que j'ai (UnsatisfiedLinkError dans System.loadLibrary) :
----------
Erreur à l'exécution:
The library libndkmain.so could not be loaded.
----------
A savoir, si j'enlève la ligne "LOCAL_SHARED_LIBRARIES += QCAR" et que j'enlève les #include <QCAR/xxx.h> de mon code, j'arrive bien à récupérer mon code C++.
Cependant, j'aimerai combiner ET mon code C++ et le code donné par Qualcomm (QCAR).
Merci d'avance.
Partager