在Visual C ++ 2010中构建Tesseract

时间:2012-05-03 19:33:32

标签: c++ tesseract

当我尝试在Visual C ++ 2010 Express中构建Tesseract解决方案时,它说:

21>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(113,5): error MSB3073: The command "post-build.cmd "C:\Tesseract-OCR\tesseract-3.01\vs2010\Release\" "C:\Tesseract-OCR\tesseract-3.01\vs2010\bin.rel"
21>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(113,5): error MSB3073: :VCEnd" exited with code 4.
========== Build: 20 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

我不知道该怎么办。有谁知道问题是什么以及如何解决它?

3 个答案:

答案 0 :(得分:1)

您必须在[tesseract source] \ vs2010文件夹中编辑post-build.cmd文件,如下所示 例如,在Notepad ++中打开文件,然后“rem”以下行:

xcopy ..\vs2008\lib\liblept168%DebugVersion%.dll %TargetFolder% /Y /I /D
rem copy data
if not exist %DataFolder% (
   md %DataFolder%
)
xcopy ..\TessData\eng.traineddata %DataFolder% /Y /I /D

如果您之前已经安装了可执行文件,那么应该这样做。由于tesseract\tessdata\函数的“mainblk.cpp”文件中的环境变量(TESSDATA_PREFIX)获取main_setup文件夹,因此无需按照帖子中的说明复制数据文件夹-build.cmd。

如果您没有安装可执行文件,则必须手动创建此变量。该值应指示\ tessdata \所在的文件夹没有\ tessdata \本身,因为在main_setup \tessdata的最后一行添加到路径中。

答案 1 :(得分:0)

以管理员身份运行vs2010并再次构建,如raym0nd所建议的那样。它对我有用。

答案 2 :(得分:0)

您可能没有正确安装tesseract-ocr-3.01.eng.tar.gz

来自readme

  

下载这些套餐:

     

tesseract-3.01.tar.gz - tesseract source

     

tesseract-3.01-win_vs.zip - Visual Studio(2008& 2010)解决方案   必要的图书馆

     

tesseract-ocr-3.01.eng.tar.gz - tesseract的英文文件   (或下载其他3.01或3.00语言数据文件)

     

将它们解压缩到一个目录('tesseract-3.01')。   tesseract-ocr-3.01.eng.tar.gz的根目录名称错误   ('tesseract-ocr'代替'tesseract-3.01')。 Windows相关文件   位于vs2008目录中(例如'tesseract-3.01 \ vs2008')。该   与往常一样的构建过程适用:打开tesseract.sln   VC ++ Express 2008并构建所有(或只是Tesseract)它应该编译   (至少在发布模式下)无需进一步安装。   包括dll依赖项和Leptonica。输出将在   tesseract-3.01 \ vs2008 \ bin(或tesseract-3.01 \ vs2008 \ bin.rd或   tesseract-3.01 \ vs2008 \ bin.dbg基于配置构建)。