Win10-x64+VS2015/VS2019
下载编译
1.下载zxing包,并解压,下载地址:https://github.com/glassechidna/zxing-cpp
build文件夹是后面建立的
2.新建build文件夹,打开cmd命令框,进入build路径下,执行命令(Cmake已经安装):
32位系统下执行:
> cmake -G "Visual Studio 14" ..
64位系统下执行:
> cmake -G "Visual Studio 14 2015 Win64" ..
注意看命令行提示信息,Cmakelist找不到OpenCV下提供的OpenCVConfig.cmake或者opencv-config.cmake。实际上这是因为zxing库需要依赖OpenCV,我们打开build上级目录下的CMakeLists.txt,在第48行添加OpenCV库的路径,该路径下包含了所需的cmake文件。
修改完成后,重新执行命令(注意清空build文件夹生成的文件),成功找到opencv!
这里注意,因为我们的VS使用的是2015,所以命令中指定的是Visual Studio 14。
当然,也可以使用Cmake的GUI方式操作,不需要修改CmakeLists.txt的方式。如下,第一步,打开Cmake工具;第二步,选择Source和Build路径;第三步,点击Add Entry,添加OpenCV_DIR,其中类型输入Path,值通过文件选择为OpenCV的lib路径;第四步点击Configure,选择Visual Studio 14和x64,然后点击完成,可以在下方空白区看到开始配置,Configuring done,成功找到OpenCV;第五步,点击Generate,下方区域显示Generating done。编译完成
编译成功后,build文件夹下的内容如下:
3.使用VS2015打开zxing.sln项目,设置成debug x64模式,右键zxing的解决方案(包含6个项目),生成解决方案!
注意!解决方案下zxing生成失败,libzxing生成时一大堆警告!
经过小编连续几天的不懈努力,包括但不限于对源码、属性表及Cmakelists.txt的研究。终于在最后还是放弃了,目前只知道解决方案生成失败是由于项目libzxing中存在名称相同的源文件,而在编译过程中发生混乱引起的!(这里请擅长VS2015编译链接过程的大佬支个招,为广大同行排忧解难!)
VS2019已经很成熟,能够针对不同路径的同名文件自动编译而不发生混乱,将上面所有使用VS2015的步骤改用VS2019就可以成功编译生成。
例如:
“Visual Studio 14 2015 Win64"修改为"Visual Studio 16 2019 Win64”
配置使用
1.第一步,构建zxing库
将 libzxing-debug.lib , zxing-cpp\core\src和zxing-cpp\opencv\src目录下面的zxing文件夹拷贝出来,构成一个单独供C++调用的 zxing库。 如下图所示,建立了一个新的Zxing文件夹,在其下面新建lib和include文件夹,将libzxing-debug.lib拷贝进lib;并且将zxing-cpp\core\src和zxing-cpp\opencv\src目录下面的zxing文件夹合并拷贝到include文件夹里面。
2.第二步,配置开发环境
使用VS2019建立工程(VS2015编译失败),打开项目的属性,按如下配置:
- C/C++>常规附加包含目录:添加include目录
- 链接器常规附加库目录:添加lib目录
- 链接器常规附加依赖项:添加libzxing-debug.lib
同时还需要添加opencv的属性配置,方法请参考opencv的配置方法,这里不再说明。
3.第三步,代码中使用zxing
#include "stdafx.h"
#