我按照说明编译并安装了poppler-0.39.0。默认情况下,头文件进入 int usrlocalinclude
和 lib 文件进入 usrlocallib
.pdftohtml 安装在 usrlocalbin
中。
现在,当我尝试运行pdftohtml
时,它给出了以下错误。
pdftohtml: error while loading shared libraries: libpoppler.so.58: cannot open shared object file: No such file or directory.
虽然libpoppler.so.58
存在于usrlocallib
.请帮助我。
我在 Ubuntu 18.04 上遇到了类似的问题。安装后,我收到此错误:
error while loading shared libraries: libpoppler.so.90: cannot open shared object file: No such file or directory
原来它被安装/usr/local/lib
:
Install the project...
-- Install configuration: "RelWithDebInfo"
-- Installing: /usr/local/lib/libpoppler.so.90.0.0
-- Installing: /usr/local/lib/libpoppler.so.90
-- Installing: /usr/local/lib/libpoppler.so
-- Installing: /usr/local/lib/pkgconfig/poppler.pc
-- Installing: /usr/local/lib/pkgconfig/poppler-splash.pc
-- Installing: /usr/local/lib/pkgconfig/poppler-qt5.pc
-- Installing: /usr/local/lib/pkgconfig/poppler-glib.pc
-- Installing: /usr/local/lib/pkgconfig/poppler-cairo.pc
-- Installing: /usr/local/lib/pkgconfig/poppler-cpp.pc
但系统没有看那里。
要检查/usr/local/lib
是否在要搜索的默认目录中,您可以查看 /etc/ld.so.conf.d/libc.conf
。
如果还没有,您可以添加:/usr/local/lib
就我而言,情况已经如此:
# libc default configuration
/usr/local/lib
但是/etc/ld.so.cache
的缓存没有更新。
为此,请运行(如root
/sudo
):
ldconfig
为我解决了问题。希望这对某人有所帮助!
刚刚在 Amazon Linux 64 位框中显示了相同的错误消息。我猜pdftotext在/usr/lib64/中寻找libpoppler.so.58,但库位于/usr/lib上
所以我运行了以下命令(作为超级用户):
$ cp/usr/lib/libpoppler.so.58.0.0/usr/lib64
$ ldconfig
您可能需要替换目录以使其适合您的情况。我不确定这是否是最正确的解决方法,但它奏效了。