我无法让配置脚本识别我通过Homebrew安装的pango库,这些库是培训工具的依赖项。到目前为止,我已按照此处详述的所有步骤操作:
https://github.com/tesseract-ocr/tesseract/issues/1453
和这里:
https://github.com/tesseract-ocr/tesseract/wiki/Compiling#macos
运行配置脚本后,我继续在输出中获取这些警告:
检查pango> = 1.22.0 ......不
configure:警告:需要pango 1.22.0或更高版本,但未找到。
configure:警告:不会构建培训工具。
configure:警告:尝试安装libpango1.0-dev软件包。
检查开罗...没有
configure:警告:由于缺少cairo库,因此不会构建培训工具。
configure:警告:尝试安装libcairo-dev ??包。
这些库位于它们应该的位置,位于/usr/local/Cellar/pango/1.42.4_1
我已经尝试按照上面的说明运行configure脚本:
./configure CPPFLAGS=-I/usr/local/opt/icu4c/include LDFLAGS=-L/usr/local/opt/icu4c/lib
以及尝试添加链接标志的路径:
./configure LDFLAGS="-L/usr/local/opt/icu4c/lib -L/usr/local/Cellar/pango/1.42.4_1/lib" CPPFLAGS="-I/usr/local/opt/icu4c/include"
我仍然无法让脚本看到库。
提前感谢有关如何解决此问题的任何建议。
它看起来像pango和/或cairo,也许其他库依赖于libffi。 libffi在Homebrew被称为keg-only。即使安装了libffi,也不会通过符号链接进行链接。当pkg-config尝试查找库时,它还会检查其依赖项。由于无法找到libffi,pkg-config会告诉cairo不可用。因此,需要打电话
brew link libffi --force
这应该解决问题而不涉及任何额外的事情。至少它适用于我的情况。
我通过复制libffi和icu4c下的pkgconfig文件来解决这个问题 (在终端中输入brew link libffi icu4c查找路径) 并将它们粘贴到/ usr / local / lib / pkgconfig然后设置
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
这是我找到的问题最优雅的解决方案:
brew install cairo pango icu4c autoconf libffi libarchive
export PKG_CONFIG_PATH=\
$(brew --prefix)/lib/pkgconfig:\
$(brew --prefix)/opt/libarchive/lib/pkgconfig:\
$(brew --prefix)/opt/icu4c/lib/pkgconfig:\
$(brew --prefix)/opt/libffi/lib/pkgconfig
./configure
https://github.com/tesseract-ocr/tesseract/wiki/TrainingTesseract-4.00#on-macos-mojave-with-homebrew