ubuntu 20.04 错误未定义符号:FT_Property_Set

ubuntu 20.04 错误未定义符号:FT_Property_Set

有一个 python2 项目在 Ubuntu 16.04 上运行良好,但是当我创建 virtualenv 来为 python2 设置项目时,除了使用 python pdfkit 模块生成 PDF 时出现错误外,其他一切都运行正常

/usr/bin/wkhtmltopdf:符号查找错误:/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/ls -ld:未定义符号:FT_Property_Set

$ wkhtmltopdf --version 
wkhtmltopdf 0.12.5
$ dpkg -S /usr/bin/wkhtmltopdf 
wkhtmltopdf: /usr/bin/wkhtmltopdf
$ ldd /usr/bin/wkhtmltopdf | grep local 
libfreetype.so.6 => /usr/local/freetype/2_10_1/lib/libfreetype.so.6 (0x00007faf8693a000)

$ sudo find / -type f -name *freetype*.so* 2> /dev/null  
/snap/gnome-3-28-1804/128/usr/lib/x86_64-linux-gnu/libfreetype.so.6.15.0
/snap/gnome-3-28-1804/145/usr/lib/x86_64-linux-gnu/libfreetype.so.6.15.0
/home/me/.local/lib/python3.8/site-packages/opencv_python.libs/libfreetype-8d3bcff4.so.6.14.0
/home/me/Downloads/freetype/freetype-2.10.1/objs/.libs/libfreetype.so.6.17.1
/home/me/.nvm/versions/node/v14.15.0/lib/node_modules/framework7-cli/node_modules/sharp/vendor/lib/libfreetype.so.6.17.1
/home/me/Android/Sdk/emulator/lib64/qt/lib/libfreetype.so.6
/usr/local/freetype/2_10_1/lib/libfreetype.so.6.17.1
/usr/lib/x86_64-linux-gnu/libfreetype.so.6.17.1
/usr/lib/x86_64-linux-gnu/vlc/plugins/text_renderer/libfreetype_plugin.so
/work/mine/lamp74/common/lib/libfreetype.so.6.8.0

答案1

您有本地编译的 LibFreetype 版本。为了使一切顺利运行,您必须删除此类库并使用官方打包版本。

打开终端并输入:

sudo rm -rf /usr/local/freetype
sudo apt-get install --reinstall libfreetype6 libfreetype-dev

然后重试运行wkhtmltopdf或使用它的 Python 脚本。

答案2

最终经过几天的时间才得到解决。

没有发现任何与 home 文件夹相关的问题。这实际上是 QT lib 动态加载问题导致的。在系统端和环境变量设置中做了几次设置后,没有任何效果。

最后我必须从下载一个预编译的二进制文件(QT 修补)https://wkhtmltopdf.org/根据您的操作系统版本。

就我的情况来说: https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.focal_amd64.deb

安装位置为:/usr/local/bin/wkhtmltopdf

然后它就像魔法一样发挥作用。

谢谢@N0rbert 的帮助。

-:)

相关内容