我需要构建没有leptonica依赖的tesseract进行某些工作(使用emscripten进行移植)。 我查看了make文件,似乎tesseract需要leptonica头文件和lib文件才能构建。
提供头文件不是问题,但由于某些原因我不能提供lib文件(emscripten不生成leptonica的lib文件)。我试图通过编辑make文件来阻止tesseract要求leptonica,但似乎我走错了路。
我是非常新的制作/ autotools的东西,我所做的是从整个脚本中的“$LIB
”变量中删除ac_link
标志,以及我认为它正在呼叫的更少的地方。
但我想这些构建系统可能有一种方法可以更清晰地删除依赖关系,而无需编辑configure脚本中的任意位置(可能是某些地方,如makefile.am或某处)。或者有没有其他方法可以在没有leptonica的情况下构建tesseract,我怎么能完全做到这一点?
很抱歉,如果我使用了错误的术语,就像我说我对上面的构建系统不太熟悉。
答案 0 :(得分:2)
我担心除非你提供所需功能的替代品,否则无法省略Leptonica。
我就此事做了一些研究。目前,Leptonica计算了2481个函数,但Tesseract使用了它们中的一小部分 - 总共163个函数。
所以你必须提供一个非平凡的163函数的替代品,主要是复杂的图像处理,如mathematical morphology,通过剪切和彩色图像的二值化旋转。
事实上,不可能将Leptonica重新编译为Javascript投票以更好地模块化Leptonica。目前,它是一个巨大的单片库,依赖于jpeg,gif,tiff,webp等几种图像格式。因此,你必须重新编译适当的库,如libtiff,libgiff,libz,libwebp进入Javascript也是如此。这可以作为插件更好地实现。
只是我的两分钱......