导入错误:/usr/lib/x86_64-linux-gnu/libharfbuzz.so.0:未定义符号:FT_Get_Var_Blend_Coordinates

导入错误:/usr/lib/x86_64-linux-gnu/libharfbuzz.so.0:未定义符号:FT_Get_Var_Blend_Coordinates

我在 Ubuntu 18.10

尝试让 GitHub 上的这个项目正常运行时:https://github.com/naokishibuya/car-behavioral-cloning

运行“python drive.py model.h5”后出现以下错误:

Traceback (most recent call last):
  File "drive.py", line 30, in <module>
    import utils
  File "/home/michael/Documents/SelfDrive/utils.py", line 1, in <module>
    import cv2, os
ImportError: /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0: undefined symbol: FT_Get_Var_Blend_Coordinates

我在 Google 上搜索该问题后发现,修复通常涉及其他 Linux 发行版,如 Arch 或 CentOS,但我还没有看到任何人尝试修复甚至报告 Ubuntu 上的问题。在大多数情况下,人们将此问题与 FreeType 库联系起来,并建议重新安装或更改版本。我真的不知道库在 Linux 上是如何工作的,在检查“sudo apt remove libfreetype6”后,控制台报告几乎有 1.5GB 将被删除,所以我猜很多其他库都依赖于这个库?我不敢继续,尤其是如果我甚至不知道这个库是导致这个问题的原因。

我尝试在两台不同的计算机上运行此代码,一台使用 Ubuntu 18.04,另一台使用 Debian 9。它在 Ubuntu 18.04 上不起作用,所以这个问题似乎很容易解决复制在最近的 Ubuntu 版本上。它在第二个版本上也能正常工作……但我负担不起切换到 Debian,因为我认为我无法让虚幻引擎在那个系统上运行。(我也更喜欢 Ubuntu)

我将非常感激有关如何实现此功能的任何提示。

答案1

通过反复试验,我终于让它工作了。我只需要在我的 Anaconda 环境中切换几个库的版本。这些库及其版本如下:

  • Harfbuzz 0.9.39(我认为它可以适用于 1.4.1 之前的任何版本)
  • Glib 2.58.2
  • Pango 1.39.0

这是环境文件出现此错误的人的内容。

相关内容