974
这是编译android库的指南:
编译适用于Android设备的OpenALPR的教程
[第0步]
- 下载并部署android-ndk
- 建立指向android-ndk根文件夹的符号链接到/ opt
[步骤1]
[第2步]
[第3步]
下载并安装Android CMake项目(https://code.google.com/p/android-cmake/)。最后,您应该获得一个用于生成android项目的工具链。如果您要选择使用哪个编译器,我建议使用gcc4.6,因为我没有使用指向gcc4.8编译器的工具链来实现OpenALPR的编译...
在/ opt内建立指向android-toolchain文件夹的符号链接(即:sudo ln -s PATH_TO_ANDROID_TOOLCHAIN / opt / android-toolchain)。(android-toolchain文件夹是在Android CMake项目的部署过程中生成的!)
[步骤4]
- 从github(https://github.com/openalpr/openalpr)下载openalpr-master
- 在openalpr-master目录中创建一个文件夹“ build”
转到src目录并编辑CMakeLists.txt文件:
- 替换此行:SET(OpenCV_DIR“ $ {CMAKE_SOURCE_DIR} /../ libraries / opencv /”)
- 与:SET(OpenCV_DIR“ path_to_OpenCV4Android / sdk / native / jni”)
然后,注释用于生成alprd的部分(或将其删除):
在基于Unix的操作系统上编译alprd库
如果(不是WIN32)ADD_EXECUTABLE(alprd daemon.cpp videobuffer.cpp守护程序/beanstalk.c daemon / beanstalk.cc守护程序/uuid.cpp)
TARGET_LINK_LIBRARIES(alprd openalpr支持uuid curl log4cplus $ {OpenCV_LIBS} $ {Tesseract_LIBS})ENDIF()
打开CMake
- 将源代码指向openalpr-master / src目录
- 将构建路径指向openalpr-master / build目录
- 按下“配置”按钮
- 选择“ Unix Makefiles”(默认)并选择“指定交叉编译工具链”,然后单击“下一步”
- 指定要使用的工具链文件:如果完成了第3步,则该文件应位于$ ANDROID_CMAKE / toolchain / android.toolchain.cmake下(请确保将$ ANDROID_CMAKE替换为其相应的绝对路径)
- 点击完成
应该没有任何错误,但是有一些警告...没关系
[第5步]
- 转到构建目录并编辑此文件:misc_utilities / CMakeFiles / benchmark.dir / link.txt:删除-lpthread选项(应该只有这样的一行)。保存并退出。
- 打开文件资源管理器,然后转到path_to_tess-two / tess-two / jni / com_googlecode_tesseract_android / src
- 现在搜索每个头文件(按搜索按钮并输入“ .h”)
- 将每个头文件复制并粘贴到openalpr-master / src / openalpr / tesseract(您应该首先创建此目录)
- 在openalpr-master的根路径中创建这些目录“ libraries / tesseract-ocr / api / .libs”(mkdir -p库/tesseract-ocr/api/.libs)
- 将path_to_tess-two / tess-two / libs / armeabi-v7a / libtess.so复制并粘贴到openalpr-master / libraries / tesseract-ocr / api / .libs / libtesseract.so(确保将其从libtess.so重命名为libtesseract.so!)
- 打开终端并转到构建文件夹(openalpr-master / build)
- 做吧”
一切都应该顺利编译。您可以在openalpr-master / src / libs / armeabi-v7a中找到alpr库
就这样,让我知道您的成功和失败,我会尽力帮助您
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
编辑于
我来说两句