首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Tesseract和Visual C++ 2015

Tesseract和Visual C++ 2015
EN

Stack Overflow用户
提问于 2015-11-22 18:40:33
回答 1查看 1.5K关注 0票数 0

我正尝试在C++应用程序中使用tesseract,但我无法在Visual Studio中运行它。我收到了几个"error LNK2001: unresolved symbol",我相信这是因为Visual Studio找不到我正在尝试使用的dlls。我已经在Using Tesseract OCR in VC++做了所有详细的工作。所有的tesseract库都链接在正确的位置,但仍然无法使其工作。下面是我的代码:

代码语言:javascript
运行
复制
#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; 

}

编辑:这是我得到的完整错误消息:

(?Init@TessBaseAPI@tesseract@@QEAAHPEBD0W4OcrEngineMode@2@PEAPEADHPEBV?$GenericVector@VSTRING@@@@3_N@Z):错误LNK2001:未解析的外部符号"public: int __cdecl tesseract::TessBaseAPI::Init(char const *,char const *,enum tesseract::OcrEngineMode,char * *,int,class GenericVector const *,class GenericVector const *,bool)“TessBaseAPI::Init(char const*,char const*,enum tesseract::OcrEngineMode,char**,int,class GenericVector const*,bool)”TessBaseAPI::Init(char const*,char const*,enum tesseract::OcrEngineMode,char**,int,class GenericVector const*,bool)“TessBaseAPI::Init(char const*

1>CallPythonFromC++.obj :错误LNK2001:未解析的外部符号"public:__cdecl tesseract::TessBaseAPI::TessBaseAPI(void)“(??0TessBaseAPI@tesseract@@QEAA@XZ)

1>CallPythonFromC++.obj :错误LNK2001:未解析的外部符号pixRead

(?SetImage@TessBaseAPI@tesseract@@QEAAXPEBUPix@@@Z):错误LNK2001:未解析的外部符号"public: void __cdecl tesseract::TessBaseAPI::SetImage(struct Pix const *)“TessBaseAPI::SetImage(struct Pix const*)”TessBaseAPI::SetImage(struct Pix const*)“TessBaseAPI::SetImage

(?GetUTF8Text@TessBaseAPI@tesseract@@QEAAPEADXZ):错误1>CallPythonFromC++.obj :未解析的外部符号"public: char *tesseract::TessBaseAPI::GetUTF8Text(LNK2001)“(?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个未解析的外部变量

EN

回答 1

Stack Overflow用户

发布于 2017-10-16 07:23:39

您至少需要添加以下依赖项:

tesseract.lib;openjpeg.lib;libwebp.lib;libtiff.lib;libtesseract.lib;libpng.lib;liblept.lib;libjpeg.lib;jbig2enc.lib;giflib.lib;zlib.lib;

PropertyPages /链接器/输入/其他依赖项

注意您的配置调试/发布X64 ...

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33853871

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档