![](/img/trans.png)
[英]How to configure and build Tesseract OCR C++ using Visual Studio 2015 x64 on Windows 10
[英]Tesseract and Visual C++ 2015
我正在尝试在C ++应用程序中使用tesseract,但无法在Visual Studio中运行它。 我收到一些“错误LNK2001:无法解析的外部符号”,我相信这是因为Visual Studio找不到我要使用的dll。 我已经完成了在VC ++中使用Tesseract OCR进行的详细操作。 所有的tesseract库都链接在正确的位置,但是仍然无法正常工作。 这是我的代码如下所示:
#include "stdafx.h"
#include <iostream>
#include <string>
#include <tesseract/baseapi.h>
#include <leptonica/allheaders.h>
using namespace std;
int main(int argc, char *argv[])
{
char *outText;
tesseract::TessBaseAPI *api = new tesseract::TessBaseAPI();
// Initialize tesseract-ocr with English, without specifying tessdata path
if (api->Init(NULL, "eng")) {
fprintf(stderr, "Could not initialize tesseract.\n");
exit(1);
}
// Open input image with leptonica library
Pix *image = pixRead("C:\\Users\\Marcio\\PythonProjects\\python_ocr.png");
api->SetImage(image);
// Get OCR result
outText = api->GetUTF8Text();
printf("OCR output:\n%s", outText);
// Destroy used object and release memory
api->End();
delete[] outText;
pixDestroy(&image);
return 0;
}
编辑:这是我得到的完整错误消息:
1> CallPythonFromC ++。obj:错误LNK2001:未解析的外部符号“ public:int __cdecl tesseract :: TessBaseAPI :: Init(char const *,char const *,enum tesseract :: OcrEngineMode,char * *,int,class,GenericVector const *, class GenericVector const *,bool)“(?Init @ TessBaseAPI @ tesseract @@ QEAAHPEBD0W4OcrEngineMode @ 2 @ PEAPEADHPEBV?$ GenericVector @ VSTRING @@@@ 3_N @ Z)
1> CallPythonFromC ++。obj:错误LNK2001:无法解析的外部符号“ public:__cdecl tesseract :: TessBaseAPI :: TessBaseAPI(void)”(?? 0TessBaseAPI @ tesseract @@ QEAA @ XZ)
1> CallPythonFromC ++。obj:错误LNK2001:未解析的外部符号pixRead
1> CallPythonFromC ++。obj:错误LNK2001:无法解析的外部符号“ public:void __cdecl tesseract :: TessBaseAPI :: SetImage(struct Pix const *)”(?SetImage @ TessBaseAPI @ tesseract @@ QEAAXPEBUPix @@@@ Z)
1> CallPythonFromC ++。obj:错误LNK2001:无法解析的外部符号“ public:char * __cdecl tesseract :: TessBaseAPI :: GetUTF8Text(void)”(?GetUTF8Text @ TessBaseAPI @ tesseract @@ QEAAPEADXZ)
1> CallPythonFromC ++。obj:错误LNK2001:无法解析的外部符号“ public:void __cdecl tesseract :: TessBaseAPI :: End(void)”(?End @ TessBaseAPI @ tesseract @@ QEAAXXZ)
1> CallPythonFromC ++。obj:错误LNK2001:未解析的外部符号pixDestroy
1> C:\\ Users \\ Marcio \\ BlindSight \\ CallPythonFromCPP \\ x64 \\ Release \\ CallPythonFromC ++。exe:致命错误LNK1120:7个未解决的外部组件
您至少必须添加以下依赖项:
tesseract.lib; openjpeg.lib; libwebp.lib; libtiff.lib; libtesseract.lib; libpng.lib; liblept.lib; libjpeg.lib; jbig2enc.lib; giflib.lib; zlib.lib;
PropertyPages /链接器/输入/其他依赖项
注意您的配置Debug / Release X64 ...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.