Windows下构建Gosseract报错:无法找到-llept,求解决路径
解决gosseract编译时找不到-llept的问题
问题详情
已安装包含leptonica、tesseract-ocr和gcc的MSYS2,使用github.com/otiai10/gosseract库编译时出现以下链接错误:
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -llept: No such file or directory.
涉及的gosseract的client.go代码片段:
// #if __FreeBSD__ >= 10 // #cgo LDFLAGS: -L/usr/local/lib -llept -ltesseract // #else // #cgo CXXFLAGS: -std=c++0x // #cgo LDFLAGS: -llept -ltesseract
解决方法
验证依赖包安装状态:在MSYS2终端执行以下命令,确认leptonica和tesseract是否正确安装:
pacman -Q mingw-w64-x86_64-leptonica mingw-w64-x86_64-tesseract如果显示未安装,运行以下命令重新安装:
pacman -S mingw-w64-x86_64-leptonica mingw-w64-x86_64-tesseract指定库搜索路径:MSYS2的mingw64库目录不在默认搜索路径中,需要修改cgo的LDFLAGS添加路径。可以直接修改代码中的cgo指令:
// #if __FreeBSD__ >= 10 // #cgo LDFLAGS: -L/usr/local/lib -llept -ltesseract // #else // #cgo CXXFLAGS: -std=c++0x // #cgo LDFLAGS: -L/c/msys64/mingw64/lib -llept -ltesseract或者在编译时通过环境变量传递参数:
CGO_LDFLAGS="-L/c/msys64/mingw64/lib -llept -ltesseract" go build检查环境变量:确保系统
PATH环境变量包含C:\msys64\mingw64\bin,保证编译时能找到相关动态库文件。
内容的提问来源于stack exchange,提问作者Adam Rizaldi
相关产品推荐
相关产品推荐

