我目前正在使用https://github.com/tesseract-ocr/tesseract/wiki/Compiling上的说明从源代码(在Ubuntu 14.04上)构建Tesseract 4.0.0。

我正在使用以下./configure参数:
./configure --disable-openmp --disable-graphics --disable-opencl --enable-static LDFLAGS='-static -static-libgcc -static-libstdc++' --disable-shared
其次是makesudo make install
我要运行的已编译二进制文件是src/api/tesseract,它可以按预期工作。问题是,当我对该文件运行ldd时,它实际上显示了依赖性。

我是在为Tesseract的静态二进制文件寻找错误的位置(我在整个存储库中运行了一条find命令,却没有看到其他看起来像可执行文件的东西),还是我误解了静态二进制文件的含义-我是在印象中,它几乎是Tesseract的可执行版本,不需要预先安装任何依赖项。

如果配置选项也有任何问题,请告诉我。我不相信--disable-openmp --disable-graphics --disable-opencl会影响静态链接与共享链接,但是我将它们用于我想要的tesseract构建,因此我将它们包含在更多上下文中。

最佳答案

$ uname -a

$ echo $ CFLAGS

$ echo $ LDFLAGS

$ ./configure --enable-static LDFLAGS ='-static -static-libgcc -static-libstdc++'--disable-shared

$使

$ 文件src / api / tesseract

没有静态链接。

关于c++ - 如何为Tesseract构建静态二进制文件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51314623/

10-13 08:26