[HarfBuzz] How to uninstall harfbuzz?

Behdad Esfahbod behdad at behdad.org
Tue Aug 2 22:34:53 UTC 2016


On Tue, Aug 2, 2016 at 3:31 PM, Kelvin Ma <kelvinsthirteen at gmail.com> wrote:
> environ['LD_LIBRARY_PATH'] = '/usr/local/lib/girepository-1.0'

Try:
environ['LD_LIBRARY_PATH'] = '/usr/local/lib'

At any rate, I don't think setting LD_LIBRARY_PATH from current
process affects the process itself.  You need to set this before
calling python.  And that's all the help I can offer on this issue.
Someone else told you exactly this before.

> environ['GI_TYPELIB_PATH'] = '/usr/local/lib/girepository-1.0'
>
> from gi.repository import HarfBuzz as hb
> from gi.repository import GLib
>
> fontdata = open(sys.argv[1], 'rb').read ()
> text = sys.argv[2]
> # Need to create GLib.Bytes explicitly until this bug is fixed:
> # https://bugzilla.gnome.org/show_bug.cgi?id=729541
> blob = hb.glib_blob_create (GLib.Bytes.new (fontdata))
> face = hb.face_create (blob, 0)
> del blob
> font = hb.font_create (face)
> upem = hb.face_get_upem (face)
> del face
> hb.font_set_scale (font, upem, upem)
> hb.ot_font_set_funcs (font)
>
> buf = hb.buffer_create ()
> class Debugger(object):
>     def message (self, buf, font, msg, data, _x_what_is_this):
>         print(msg)
>         return True
> debugger = Debugger()
> hb.buffer_set_message_func (buf, debugger.message, 1, 0)
>
> hb.buffer_add_utf32 (buf, array.array('I', text.encode('utf-32')), 0, -1)
>
> hb.buffer_guess_segment_properties (buf)
>
> hb.shape (font, buf, [])
> del font
>
> infos = hb.buffer_get_glyph_infos (buf)
> positions = hb.buffer_get_glyph_positions (buf)
>
> for info,pos in zip(infos, positions):
>     gid = info.codepoint
>     cluster = info.cluster
>     x_advance = pos.x_advance
>     x_offset = pos.x_offset
>     y_offset = pos.y_offset
>
>     print("gid%d=%d@%d,%d+%d" % (gid, cluster, x_advance, x_offset,
> y_offset))
>
> This works correctly when Harfbuzz is installed in usr/local/.
>
> However, if I sudo make uninstall, run ./configure --with-gobject
> --enable-introspection --prefix=/home/kelvin/HB, and make install, and
> change the environment variables to
>
> environ['LD_LIBRARY_PATH'] = '/home/kelvin/HB/lib/girepository-1.0'
> environ['GI_TYPELIB_PATH'] = '/home/kelvin/HB/lib/girepository-1.0'
>
> The script crashes like this:
>
> ~$ ./hbt.py NocturnoDisplay-Bk.otf effectiveness
> ./hbt.py:11: PyGIWarning: HarfBuzz was imported without specifying a version
> first. Use gi.require_version('HarfBuzz', '0.0') before import to ensure
> that the right version gets loaded.
>   from gi.repository import HarfBuzz as hb
>
> ** (process:7354): WARNING **: Failed to load shared library
> 'libharfbuzz-gobject.so.0' referenced by the typelib:
> libharfbuzz-gobject.so.0: cannot open shared object file: No such file or
> directory
> Segmentation fault (core dumped)
>
> And yes, libharfbuzz-gobject.so.o is in the folder:
>
> ~/HB/lib$ ls
> girepository-1.0                  libharfbuzz.la
> libharfbuzz-gobject.la            libharfbuzz.so
> libharfbuzz-gobject.so            libharfbuzz.so.0
> libharfbuzz-gobject.so.0          libharfbuzz.so.0.10200.7
> libharfbuzz-gobject.so.0.10200.7  pkgconfig
>
>
> On Tue, Aug 2, 2016 at 5:52 PM, Behdad Esfahbod <behdad at behdad.org> wrote:
>>
>> On Tue, Aug 2, 2016 at 2:42 PM, Kelvin Ma <kelvinsthirteen at gmail.com>
>> wrote:
>> > ok thanks, but when I rebuild and install into ~/HB using harfbuzz (and
>> > changing the environment variables to the new directory) doesn't work. I
>> > get
>>
>> "doesn't work" is never enough.  It sure works for me.  Works for a
>> thousand other people.  Only you can debug it.  For example, is
>> libharfbuzz-gobject.so.o in ~/HB/lib?  If yes, is your LD_LIBRARY_PATH
>> correctly set, try strace, does it look there, etc.
>>
>>
>> > ** (kt.py:15896): WARNING **: Failed to load shared library
>> > 'libharfbuzz-gobject.so.0' referenced by the typelib:
>> > libharfbuzz-gobject.so.0: cannot open shared object file: No such file
>> > or
>> > directory
>> >
>> > and sometimes a bunch of other errors after it
>> >
>> > On Tue, Aug 2, 2016 at 5:31 PM, Behdad Esfahbod <behdad at behdad.org>
>> > wrote:
>> >>
>> >> "make uninstall"
>> >>
>> >> On Tue, Aug 2, 2016 at 2:28 PM, Kelvin Ma <kelvinsthirteen at gmail.com>
>> >> wrote:
>> >> > I want to move my harfbuzz installation out of root space and into
>> >> > user
>> >> > space, but I can't find uninstall info anywhere. How do I uninstall
>> >> > harfbuzz?
>> >> >
>> >> > _______________________________________________
>> >> > HarfBuzz mailing list
>> >> > HarfBuzz at lists.freedesktop.org
>> >> > https://lists.freedesktop.org/mailman/listinfo/harfbuzz
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >> behdad
>> >> http://behdad.org/
>> >
>> >
>>
>>
>>
>> --
>> behdad
>> http://behdad.org/
>
>



-- 
behdad
http://behdad.org/


More information about the HarfBuzz mailing list