基于Anycloud平台移植zxing-cpp

基于Anycloud平台移植zxing-cpp

0. 环境准备

  1. 系统环境Ubuntu 16.04.7
  2. zxing-cpp下载
    本次使用的是 nu-book 的代码:
    git clone https://github.com/nu-book/zxing-cpp.git
  3. 由于最新版本的代码需要cmake 3.14 或以上,所以当前使用的版本为zxing-cpp-1.0.8

1. 交叉编译

  1. tar xzf zxing-cpp-1.0.8.tar.gz
  2. cd zxing-cpp-1.0.8/
  3. 修改CMakeLists.txt :
cmake_minimum_required (VERSION 3.1.3)

set (ZXING_VERSION_MAJOR 1)
set (ZXING_VERSION_MINOR 0)
set (ZXING_VERSION_PATCH 7)

project (ZXingCpp VERSION ${ZXING_VERSION_MAJOR}.${ZXING_VERSION_MINOR}.${ZXING_VERSION_PATCH})

SET(CMAKE_SYSTEM_NAME Linux)
SET(CMAKE_C_COMPILER  arm-anykav500-linux-uclibcgnueabi-gcc)
SET(CMAKE_CXX_COMPILER arm-anykav500-linux-uclibcgnueabi-g++)
set(CMAKE_INSTALL_PREFIX "/home/anyka/project/zxing_project/output")

添加最后四行,设置系统、工具链配置及安装路径.
4. mkdir build
5. cd build
6. cmake../
7. make
8. make install

2. 编译静态库

前面的编译默认是编译动态库(libZXingCore.so), 如果需要编译静态库(libZXingCore.a),则需要进行配置编译.

  1. 步骤1~5同上
  2. cmake -DBUILD_SHARED_LIBRARY=false ../
  3. make
  4. make install

3. 测试

将相关的动态库(libZXingCore.so)放到文件系统里面后,使用代码自带的example(zxing-cpp-1.0.8/example/scan_image.cpp)进行测试.

将example编译后,放到系统中进行测试:

[root@anyka /tmp]$ ./scan_image  -format QR_CODE ./qrcode.png
Text:     Hello world
Format:   QR_CODE
Position: 103x535 103x103 535x103 464x464
EC Level: H

能够识别二维码信息"Hello world".

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值