VS2017配置tesseract

本次配置主要参考了vs2017配置tesseractTesseract-OCR4.0版本在VS2015上的编译与运行。现对上述配置过程中的一些问题进行说明。

cmake

最开始使用了cmake-gui直接对tesseract的源码进行编译,但是一直报错。而且在power shell中不能运行cmake的命令,所以我又下载了zip版的cmake,添加路径后,在power shell中可以成功运行cmake命令。

tessearct

我是x64平台,所以要运行以下命令:

mkdir build_win64
cd build_win64
cppan ..
cmake .. -G "Visual Studio 15 2017 Win64"

在运行cppan命令时,根据网络状况,可能需要等待。下载和解压完,会回到当前的文件夹,然后再执行cmake的命令。之后再打开生成的工程,然后点“生成”中的“生成解决方案”,其中在改错时要用到“高级保存选项”,但VS2017没有“高级保存选项”,设置方法参考高级保存选项。然后单独再生成“libtesseract”,“tesseract”,之后再单独生成“INSTALL”(这步很重要,之前没做,导致在C盘找不到tesseract的库,这个参考了编译Tesseract),编译成功生成的库如下:

如果在程序中添加了#include<leptonica/allheaders.h>,在运行测试程序时,会报错 :

无法打开包括文件: “endianness.h”: No such file or directory

这是因为编译生成的是endianness.h.in,将.in去掉,打开该头文件:

#if !defined (L_BIG_ENDIAN) && !defined (L_LITTLE_ENDIAN)
# if @APPLE_UNIVERSAL_BUILD@
#  ifdef __BIG_ENDIAN__
#   define L_BIG_ENDIAN
#  else
#   define L_LITTLE_ENDIAN
#  endif
# else
#  define @ENDIANNESS@
# endif
#endif

如果直接编译,会继续报错。要将上述代码改为:

#if !defined (L_BIG_ENDIAN) && !defined (L_LITTLE_ENDIAN)
# if defined (__APPLE_CC__)//@APPLE_UNIVERSAL_BUILD@
#  ifdef __BIG_ENDIAN__
#   define L_BIG_ENDIAN
#  else
#   define L_LITTLE_ENDIAN
#  endif
# else
#  define L_LITTLE_ENDIAN//@ENDIANNESS@
# endif
#endif

编译之后一个就可以直接运行了。TESSDATA_PREFIX变量配置了一天也没成功,一直报错,放弃了!!!草~!!!

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值