命令/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/lex失败,退出代码为1

Ale*_*ier 5 xcode tesseract ios7

我试图在我的资源包中包含一个文件,文件包含以下内容:

LeadPunc="({[`'
TrailPunc=}:;-]!?`,.)"'
NumLeadPunc=#({[@$
NumTrailPunc=}):;].,%
Operators=*+-/.:,()[]
Digits=0123456789
Alphas=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
*extra line*
Run Code Online (Sandbox Code Playgroud)

这些文件被称为:

eng.cube.lm
Run Code Online (Sandbox Code Playgroud)

我得到的错误是:

IExpenseReporter/tessdata/eng.cube.lm:6: premature EOF
Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/lex failed with exit code 1
Run Code Online (Sandbox Code Playgroud)

此文件与最新版本的tesseract(OCR)一起使用.有谁知道导致此错误的原因以及如何解决?

kan*_*tar 11

将tessdata文件夹添加到项目时,请确保选择"创建文件夹引用"选项.

从文档:

注意:此库当前要求将tessdata文件夹链接为引用的文件夹而不是符号组.如果Tesseract在您自己的项目中找不到语言文件,可能是因为您创建了tessdata文件夹作为符号组而不是引用的文件夹.如果你正确地做了它应该是这样的:

在此输入图像描述

请注意tessdata文件夹如何有一个蓝色图标,表示它是作为引用文件夹而不是符号组导入的.

删除当前文件夹并将其再次添加为文件夹引用应该可以解决问题.


Mat*_*ias 1

XCode“认为”这是一个lex文件并尝试通过调用 lex.txt 来处理它。但是,lex 发现引用不平衡,因此文件过早结束。

您应该尝试显式调用指定的工具。