1
실행 파일 (ndk r10e와 ndk r12b로 컴파일 됨)을 생성하는 Android 기본 프로젝트를 작성 중입니다. 생성 된 실행 파일을 실행하려고하면 오류가 발생합니다 dlopen failed : 라이브러리 "libtest.so"을 찾을 수 없습니다.
dlopen failed: library "libtest.so" not found
은 분명히
이 "/my/system/path/libtest.so는"이 존재하고 올바른 권한 (예 : 666)을 가지고 그것을 열 수 없다는 것을.
내 장치 중 하나에서만 사용할 수 있습니다. 필자는 10 개 이상의 장치에서이를 테스트했으며 완벽하게 실행되는 것 같습니다.
왜이 오류가 발생하는지 알 수 없습니다.
도와주세요.
libtest.so는/system/lib 디렉토리에있는 것 같습니다. 맞습니까? 귀하의 장치에 대해 더 자세히 알려주십시오. AFAIK Android 6.0에서는 앱에 비표준 시스템 라이브러리를 사용할 수 없습니다. – jereksel
죄송합니다./my/system/path /는/system/lib가 아니라/data/local/temp 또는 다른 경로와 같은 일반 경로입니다. 이 장치는 뿌리가 안드로이드 5.1.1 – mrpep
당신은 라이브러리에 대한 절대 경로 또는 단지 이름으로'dlopen'을 호출하고 로컬 디렉토리에서 사물을 찾길 기대하고 있습니까? –