在x64位计算机上链接Visual Studio 2013中的tesseract和opencv

时间:2016-04-08 08:50:45

标签: visual-studio opencv tesseract

我正在尝试在 Visual Studio 2013 上运行基于 tesseract opencv 的程序。我有一个 x64位机器,问题是当我在Win32下运行它时我只得到opencv链接错误,但是在x64下我得到了tesseract链接错误。

以下是一些错误截图:

Tesseract错误:

error LNK2001: unresolved external symbol pixDestroy
error LNK2001: unresolved external symbol pixReadTesseract
error LNK1120: 7 unresolved externals

Opencv错误:

error LNK2001: unresolved external symbol _cvLoadImage  
error LNK2001: unresolved external symbol _cvCreateImage    
error LNK2001: unresolved external symbol _cvSaveImage  
error LNK2001: unresolved external symbol _cvReleaseImage   
error LNK1120: 4 unresolved externals

谢谢你们: - )

1 个答案:

答案 0 :(得分:0)

您的问题似乎是您拥有32位版本的Tesseract和64位版本的OpenCV,并尝试在同一程序中使用它们。这不起作用 - 您需要64位应用程序的所有64位库,或32位应用程序的所有32位库。

如果您想坚持使用OpenCV 3.1(因为标准分发包似乎不包含32位二进制文​​件),那么您必须自己构建其中一个库。旧版本仍然有它们。

另一种选择是下载this nuget package以及相关的可再发行组件包。由于文件只是具有不同扩展名的ZIP文件,因此可以手动提取所有标题,导入库和DLL。