对“tesseract::TessBaseAPI::TessBaseAPI()';的未定义引用; 我试图用TestSerAcC++库做一些事情,但是我得到了下面的链接器错误(明W32-G++):
我使用Code::Blocks作为IDE,并完成了以下步骤来准备我的环境:对“tesseract::TessBaseAPI::TessBaseAPI()';的未定义引用; 我试图用TestSerAcC++库做一些事情,但是我得到了下面的链接器错误(明W32-G++):,c++,compilation,linker,codeblocks,tesseract,C++,Compilation,Linker,Codeblocks,Tesseract,我使用Code::Blocks作为IDE,并完成了以下步骤来准备我的环境: 下载源代码并准备我的构建文件夹,如中所述 创建了一个新的代码::Blocks项目 将库目录中包含的所有库添加到项目中(设置->编译器设置->链接器设置->链接库->添加) 将三个附加文件夹(include、include/tesseract、include/leptonica)添加到搜索目录列表(设置->编译器设置->搜索目录->添加) 然后我写了一些代码来测试我的配置 #include <baseapi.h>
#include <baseapi.h>
#include <allheaders.h>
#include <iostream>
using namespace std;
int main()
{
tesseract::TessBaseAPI *api = new tesseract::TessBaseAPI();
return 0;
}
#包括
#包括
#包括
使用名称空间std;
int main()
{
tesseract::TessBaseAPI*api=新的tesseract::TessBaseAPI();
返回0;
}
。。。并且发生上述写入的链接器错误
我不知道我做错了什么,希望任何人都有想法
非常感谢。我必须添加所有C/C++包含路径:
..\tesseract_3.05\api
..\tesseract_3.05\ccmain
..\tesseract_3.05\ccutil
..\tesseract_3.05\ccstruct
..\tesseract_3.05\classify
..\tesseract_3.05\cube
..\tesseract_3.05\cutil
..\tesseract_3.05\dict
..\tesseract_3.05\neural_networks\runtime
..\tesseract_3.05\textord
..\tesseract_3.05\viewer
..\tesseract_3.05\opencl
..\tesseract_3.05\wordrec
..\leptonica\src
..\liblept
我还添加了所有库:
giflib.lib
libjpeg.lib
liblept.lib
libpng.lib
libtesseract.lib
libtiff.lib
libwebp.lib
openjpeg.lib
zlib.lib
您必须在生成设置中的其他链接器标志下添加库 尝试按以下约定添加-ltesseract和-lstdc++以及指向tesseract和leptonica库的路径:
-L/usr/local/ceral/tesseract/3.04.01_2/lib在ubuntu中安装tesseract和leptonica: sudo apt安装tesseract ocr sudo-apt安装libteseract-dev (见:) 放置标题: #包括 #包括 编译:
g++program.cpp-o program-llept-ltesseract如果有什么问题,那就是链接器错误,而不是编译器错误
giflib.lib
libjpeg.lib
liblept.lib
libpng.lib
libtesseract.lib
libtiff.lib
libwebp.lib
openjpeg.lib
zlib.lib