Closed Noahs007 closed 2 years ago
请问您解决了吗,遇到了同样的问题
当时貌似是 opencv 那个路径没有找到,然后单独下载 opencv sdk 解压后把 #set(OpenCV_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../../OpenCV/sdk/native/jni") 路径指向改成
set(OpenCV_DIR "D:/xl/opencv-4.5.4-android-sdk/OpenCV-android-sdk/sdk/native/jni")
------------------ 原始邮件 ------------------ 发件人: @.>; 发送时间: 2022年5月31日(星期二) 中午11:47 收件人: @.>; 抄送: @.>; "State @.>; 主题: Re: [PaddlePaddle/PaddleOCR] 安卓项目 ocr demo 编译问题 (Issue #6302)
请问您解决了吗,遇到了同样的问题
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you modified the open/close state.Message ID: @.***>
目前下载了Android sdk然后使用了绝对路径开始有别的错误了
当时貌似是 opencv 那个路径没有找到,然后单独下载 opencv sdk 解压后把 #set(OpenCV_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../../OpenCV/sdk/native/jni") 路径指向改成 set(OpenCV_DIR "D:/xl/opencv-4.5.4-android-sdk/OpenCV-android-sdk/sdk/native/jni") … ------------------ 原始邮件 ------------------ 发件人: @.>; 发送时间: 2022年5月31日(星期二) 中午11:47 收件人: @.>; 抄送: @.>; "State @.>; 主题: Re: [PaddlePaddle/PaddleOCR] 安卓项目 ocr demo 编译问题 (Issue #6302) 请问您解决了吗,遇到了同样的问题 — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you modified the open/close state.Message ID: @.***>
找到问题了,感谢您的回复
@zhang0225
当时貌似是 opencv 那个路径没有找到,然后单独下载 opencv sdk 解压后把 #set(OpenCV_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../../OpenCV/sdk/native/jni") 路径指向改成 set(OpenCVDIR "D:/xl/opencv-4.5.4-android-sdk/OpenCV-android-sdk/sdk/native/jni") … ------------------ 原始邮件 ------------------ 发件人: @.>; 发送时间: 2022年5月31日(星期二) 中午11:47 收件人: _@_.>; 抄送: @.>; "State _@_.>; 主题: Re: [PaddlePaddle/PaddleOCR] 安卓项目 ocr demo 编译问题 (Issue #6302) 请问您解决了吗,遇到了同样的问题 — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you modified the open/close state.Message ID: @_.***>
找到问题了,感谢您的回复
请问你是怎么解决的
找到问题了,需要先下载 https://opencv.org/releases/ opencv android,然后修改路径为绝对路径 路径修改方法参照上面的老哥的方案 当时貌似是 opencv 那个路径没有找到,然后单独下载 opencv sdk 解压后把 #set(OpenCV_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../../OpenCV/sdk/native/jni") 路径指向改成 set(OpenCV_DIR "D:/xl/opencv-4.5.4-android-sdk/OpenCV-android-sdk/sdk/native/jni")
而且因为 paddlelite 只有 arm64-v8a 的 lib,所以 需要 gradle 修改,指定只构建 arm64-v8a 的 lib 修改后 如下: externalNativeBuild { cmake { cppFlags "-std=c++11 -frtti -fexceptions -Wno-format" arguments '-DANDROID_PLATFORM=android-23', '-DANDROID_STL=c++_shared' ,"-DANDROID_ARM_NEON=TRUE" abiFilters "arm64-v8a" } }
@apsonLi 正解,因为昨天发现下载paddlelite 2.10版本的库只有arm64-v7a的,所以可以像你这种指定只编译自己需要的库 如果arm64-v7a与arm64-v8a都想要的话可以使用paddlelite2.9.0的库,只需要删除原pallelite包,在build.gradle中将archives下的 paddlelite下载地址与版本修改为如下 [ 'src' : 'https://paddleocr.bj.bcebos.com/dygraph_v2.0/lite/paddle_lite_libs_v2_9_0.tar.gz', 'dest': 'PaddleLite' ], 重新编译就不会有错了。
你们方法错了,不是绝对路径的问题,在app的build.gradle里面加上externalNativeBuild { cmake { cppFlags "-std=c++11 -frtti -fexceptions -Wno-format" arguments '-DANDROID_PLATFORM=android-23', '-DANDROID_STL=c++_shared' ,"-DANDROID_ARM_NEON=TRUE" abiFilters "arm64-v8a" } },就搞定了
app.gradle这样配置好像也可以,另外就是要把编译出的.so文件放到项目jniLib下
ndk {
abiFilters 'arm64-v8a'
}
- Message
请问大佬:用android_demo是可以进行安卓部署,放到某一个app上嘛?
@apsonLi 正解,因为昨天发现下载paddlelite 2.10版本的库只有arm64-v7a的,所以可以像你这种指定只编译自己需要的库 如果arm64-v7a与arm64-v8a都想要的话可以使用paddlelite2.9.0的库,只需要删除原pallelite包,在build.gradle中将archives下的 paddlelite下载地址与版本修改为如下 [ 'src' : 'https://paddleocr.bj.bcebos.com/dygraph_v2.0/lite/paddle_lite_libs_v2_9_0.tar.gz', 'dest': 'PaddleLite' ], 重新编译就不会有错了。
大佬你好,你说的重新编译是release模式也不会出错了是吧?我试了,release模式下,都想要的话,得需要加上 abiFilters 'arm64-v8a', 'armeabi-v7a',不然还是报错。我是打的release包,题主说的问题,我的是在release时出错,在as直接运行的话,不报错,能正常安装到手机。
拉下来的 android ocr demo 编译不通过
系统环境/System Environment: windows
版本号/Version:Paddle: PaddleOCR: 问题相关组件/Related components: PaddleOCR-release-2.5
运行指令/Command Code: find_package(OpenCV REQUIRED) (是运行到 CMakeLists.txt ) 第18行的时候出现的
完整报错/Complete Error Message:
buildOutput 控制台输出: