Je suis en train d'écrire un projet android natif qui génère un fichier exécutable (compilé à la fois avec ndk r10e et ndk r12b), et quand j'essaie d'exécuter l'exécutable généré, il génère une erreur qu'il n'est pas en mesure de l'ouvrir:dlopen échoué: bibliothèque "libtest.so" introuvable
dlopen failed: library "libtest.so" not found
il est évident que "/my/system/path/libtest.so" existe et a les permissions (666 par exemple).
Cela ne s'applique que sur l'un de mes appareils. Je l'ai testé dans plus de 10 appareils et il semble fonctionner parfaitement.
Je n'arrive pas à trouver pourquoi cette erreur arrive.
S'il vous plaît aidez-moi.
Je suppose que libtest.so se trouve dans le répertoire/system/lib, n'est-ce pas? Pourriez-vous nous en dire plus sur vos appareils? AFAIK Android 6.0 n'autorise pas l'utilisation de bibliothèques système non standard dans les applications. – jereksel
Désolé,/my/system/path/n'est pas/system/lib mais un chemin générique tel que/data/local/temp ou un autre. L'appareil est sous Android 5.1.1. – mrpep
Appellez-vous 'dlopen' avec le chemin absolu de la bibliothèque, ou simplement le nom et attendez-vous à trouver des éléments dans le répertoire local? –