VS2010编译使用Tesseract OCR 静态库
2014-12-19 11:18
316 查看
一、编译Tesseract OCR 库
1、去GooggleCode上面下载以下源代码:
tesseract-ocr-3.02.02.tar.gz //tesseract源代码
tesseract-ocr-3.02-vs2008.zip //vs2008工程文件
leptonica-1.68-win32-lib-include-dirs.zip //tesseract依赖的leptonica的lib和dll文件
2.先解压tesseract-ocr-3.02-vs2008.zip,解压目录下会有一个tesseract-ocr文件夹。
再将leptonica-1.68-win32-lib-include-dirs.zip 直接解压到相同的目录下,此时目录结构类似于这样:
tesseractvs2010
├─include //保存leptonica-1.68-win32-lib-include-dirs.zip解压后头文件
│ └─leptonica
├─lib //保存leptonica-1.68-win32-lib-include-dirs.zip解压后库文件
├─tesseract-ocr
// 保存tesseract源代码以及vs2008工程文件
再将tesseract-ocr-3.02.02.tar.gz直接解压到tesseract-ocr文件夹下,此时注意有一个子文件夹vs2008\port冲突,
直接把前者port文件夹里面的文件复制进去就行了。
3.直接打开tesseract-ocr\tesseract.sln,按vs2010的提示自动转换工程。
完成后选择编译配置LIB_Debug,编译。
编译过程会出现以下错误:
1> equationdetect.cpp
1>..\..\ccmain\equationdetect.cpp : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>..\..\ccmain\equationdetect.cpp(251): error C2146: 语法错误: 缺少“}”(在标识符“銆”的前面)
1>..\..\ccmain\equationdetect.cpp(251): error C2146: 语法错误: 缺少“;”(在标识符“銆”的前面)
1>..\..\ccmain\equationdetect.cpp(251): error C2065: “銆”: 未声明的标识符
1>..\..\ccmain\equationdetect.cpp(251): error C2146: 语法错误: 缺少“;”(在标识符“銆”的前面)
1>..\..\ccmain\equationdetect.cpp(251): error C2065: “銆”: 未声明的标识符
1>..\..\ccmain\equationdetect.cpp(251): error C2146: 语法错误: 缺少“;”(在标识符“銆”的前面)
1>..\..\ccmain\equationdetect.cpp(251): error C2065: “銆”: 未声明的标识符
1>..\..\ccmain\equationdetect.cpp(251): error C2143: 语法错误 : 缺少“;”(在“}”的前面)
1>..\..\ccmain\equationdetect.cpp(253): error C2065: “kCharsToEx”: 未声明的标识符
1>..\..\ccmain\equationdetect.cpp(253): fatal error C1903: 无法从以前的错误中恢复;正在停止编译
这是错误由于文件编码格式引起的。
解决方法:
双击错误中的一行,打开文件equationdetect.cpp,选择菜单“文件 -- 高级保存选项”,
在窗口中选择“简体中文(gb2312)-代码页936”,保存后重新编译即可。
此时会报一个复制文件出错的编译错误,不过不影响,因为静态库文件已经生成成功了,
就在tesseract-ocr\LIB_DEBUG目录下。暂时不知道这个错误怎么消除。
如果选择LIB_RELEASE配置选项,就不会出现这个复制文件的错误。-_-
默认是动态链接到CRT运行库的,可以自己将其修改为静态链接CRT,重新编译即可。
1、去GooggleCode上面下载以下源代码:
tesseract-ocr-3.02.02.tar.gz //tesseract源代码
tesseract-ocr-3.02-vs2008.zip //vs2008工程文件
leptonica-1.68-win32-lib-include-dirs.zip //tesseract依赖的leptonica的lib和dll文件
2.先解压tesseract-ocr-3.02-vs2008.zip,解压目录下会有一个tesseract-ocr文件夹。
再将leptonica-1.68-win32-lib-include-dirs.zip 直接解压到相同的目录下,此时目录结构类似于这样:
tesseractvs2010
├─include //保存leptonica-1.68-win32-lib-include-dirs.zip解压后头文件
│ └─leptonica
├─lib //保存leptonica-1.68-win32-lib-include-dirs.zip解压后库文件
├─tesseract-ocr
// 保存tesseract源代码以及vs2008工程文件
再将tesseract-ocr-3.02.02.tar.gz直接解压到tesseract-ocr文件夹下,此时注意有一个子文件夹vs2008\port冲突,
直接把前者port文件夹里面的文件复制进去就行了。
3.直接打开tesseract-ocr\tesseract.sln,按vs2010的提示自动转换工程。
完成后选择编译配置LIB_Debug,编译。
编译过程会出现以下错误:
1> equationdetect.cpp
1>..\..\ccmain\equationdetect.cpp : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>..\..\ccmain\equationdetect.cpp(251): error C2146: 语法错误: 缺少“}”(在标识符“銆”的前面)
1>..\..\ccmain\equationdetect.cpp(251): error C2146: 语法错误: 缺少“;”(在标识符“銆”的前面)
1>..\..\ccmain\equationdetect.cpp(251): error C2065: “銆”: 未声明的标识符
1>..\..\ccmain\equationdetect.cpp(251): error C2146: 语法错误: 缺少“;”(在标识符“銆”的前面)
1>..\..\ccmain\equationdetect.cpp(251): error C2065: “銆”: 未声明的标识符
1>..\..\ccmain\equationdetect.cpp(251): error C2146: 语法错误: 缺少“;”(在标识符“銆”的前面)
1>..\..\ccmain\equationdetect.cpp(251): error C2065: “銆”: 未声明的标识符
1>..\..\ccmain\equationdetect.cpp(251): error C2143: 语法错误 : 缺少“;”(在“}”的前面)
1>..\..\ccmain\equationdetect.cpp(253): error C2065: “kCharsToEx”: 未声明的标识符
1>..\..\ccmain\equationdetect.cpp(253): fatal error C1903: 无法从以前的错误中恢复;正在停止编译
这是错误由于文件编码格式引起的。
解决方法:
双击错误中的一行,打开文件equationdetect.cpp,选择菜单“文件 -- 高级保存选项”,
在窗口中选择“简体中文(gb2312)-代码页936”,保存后重新编译即可。
此时会报一个复制文件出错的编译错误,不过不影响,因为静态库文件已经生成成功了,
就在tesseract-ocr\LIB_DEBUG目录下。暂时不知道这个错误怎么消除。
如果选择LIB_RELEASE配置选项,就不会出现这个复制文件的错误。-_-
默认是动态链接到CRT运行库的,可以自己将其修改为静态链接CRT,重新编译即可。
相关文章推荐
- 使用 vs2010 编译 expat 静态库
- 在Linux下如何使用GCC编译程序、简单生成静态库及动态库。
- 使用静态库时需要注意的事项(gcc下程序调用静态库编译命令:主文件必须在静态库前面!)
- OpenSSL在Windows下使用vs2010的编译安装
- ArcEngine开发——在64位操作系统下使用VS2010中开发ArcEngine应用程序的编译问题
- 静态库/动态库的编译和使用方法学习记录
- 在 VS2008 / VS2010 下编译和使用 sqlite3
- VS2010 使用命令行编译的方法
- Linux下编译并使用 curl 静态库
- 图解如何使用VS2010和Qt导出和使用静态库,动态库
- VS2010 + STLport + Boost 的编译使用
- 在高能BREW平台,编译生成LIB静态库以及使用
- vs2010使用boost::interpocess编译出错
- vs2010使用boost::interpocess编译出错
- OpenSSL在Windows下使用vs2010的编译安装
- 使用VS2010编译OpenSSL的过程记录
- tbb: 使用预编译头文件和静态库
- “为了能够访问动态链接库中的位图资源,在编译动态链接库时,需要使用MFC静态库”
- 关于Boost库在VS2010下的编译使用(转)
- QT Creator编译和使用QT的静态库