Bug#1122879: /lib/x86_64-linux-gnu/libharfbuzz.so.0: undefined symbol: FT_Get_Transform

Dima Kogan dkogan at debian.org
Sat Jan 10 02:20:17 GMT 2026


Hello. I would guess there's something not right about some supporting
package on your system.

  gnuplot: symbol lookup error: /lib/x86_64-linux-gnu/libharfbuzz.so.0: undefined symbol: FT_Get_Transform

So on your box libharfbuzz.so.0 is asking for that symbol, and this
symbol isn't defined. Presumably it isn't loading whatever library is
supposed to be providing it, OR it's loading the library but your copy
of that library isn't providing it. Here's what I have on my box (where
things are working correctly):

  $ ldd /usr/bin/gnuplot-x11 | grep -E 'harfbuzz|freetype'
          libfreetype.so.6 => /usr/lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007f339502e000)
          libharfbuzz.so.0 => /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0 (0x00007f3393c15000)

So gnuplot-x11 transitively asks for those two libraries

  $ nm -D /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0 | grep FT_Get_Transform
                   U FT_Get_Transform

  $ nm -D /usr/lib/x86_64-linux-gnu/libfreetype.so.6 | grep FT_Get_Transform
  0000000000010760 T FT_Get_Transform

So libharfbuzz asks for that symbol, and libfreetype provides it.

  $ objdump -p /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0 | grep NEEDED
    NEEDED               libm.so.6
    NEEDED               libfreetype.so.6
    NEEDED               libglib-2.0.so.0
    NEEDED               libgraphite2.so.3
    NEEDED               libc.so.6

And libharfbuzz.so.0 does ask for libfreetype.so.6. So loading gnuplot
would load both of those libraries, and loading harfbuzz would trigger
loading libfreetype (if nothing else loads it), which would satisfy that
symbol. Can you run those commands on your box, and report what they
say?

My information-free guess is that you have an LD_LIBRARY_PATH set to
some local directory (/usr/local or /opt or something) AND you have
another copy of libharfbuzz sitting there, which is picked up before the
packaged one in /usr/lib/. AND your own copy of libharfbuzz asks for
that symbol, but not for the libfreetype.so. Or something along those
lines.

In any case, getting the output of those commands would help.

Thanks.



More information about the debian-science-maintainers mailing list